digitalmars.D.announce - SAOC 2021 Projects Summarized
- Mike Parker (16/16) Aug 30 2021 Five projects have been selected for SAOC 2021. I've summarized
- jmh530 (2/5) Aug 30 2021 Looks like a good set of projects. Good luck to them.
- Steven Schveighoffer (4/26) Aug 30 2021 Some really ambitious projects there! I look forward to seeing those
- Guillaume Piolat (3/19) Aug 30 2021 Hyped by ProtoObject, this is our hope for a nothrow @nogc
- Adam D Ruppe (17/19) Aug 30 2021 This fails today only because of the rt_finalize hook working
- Paul Backus (18/34) Sep 01 2021 I thought the problem with this was that destructors aren't
- user1234 (24/51) Sep 01 2021 we can use custom destructors:
- Adam Ruppe (11/12) Sep 01 2021 https://dlang.org/spec/class.html#destructors
- =?UTF-8?Q?Ali_=c3=87ehreli?= (6/7) Aug 31 2021 Being a fellow Turkish, I am curios why his last name is spelled that=20
- Mike Parker (3/10) Aug 31 2021 That's how it was submitted in the application. I simply
- Ahmet Sait (3/18) Sep 01 2021 Must have been an encoding issue with the mail then. I don't mind
- Mike Parker (2/4) Sep 01 2021 I updated the blog as soon as I saw Ali's post.
Five projects have been selected for SAOC 2021. I've summarized them on the blog. I would like to point out that the quality of the applications this year was top-notch. Thanks to the applicants for putting in the effort. I hope they all put the same effort into their weekly forum updates and milestone reports :-) Congratulations to: Robert Aron (again!) Teodor Dutu Luís Ferreira Dylan Graham Ahmet Sait KoC’ak The blog: https://dlang.org/blog/2021/08/30/saoc-2021-projects/ Reddit: https://www.reddit.com/r/d_language/comments/pehbrq/symmetry_autumn_of_code_2021_projects/
Aug 30 2021
On Monday, 30 August 2021 at 12:47:11 UTC, Mike Parker wrote:Five projects have been selected for SAOC 2021. I've summarized them on the blog. [snip]Looks like a good set of projects. Good luck to them.
Aug 30 2021
On 8/30/21 8:47 AM, Mike Parker wrote:Five projects have been selected for SAOC 2021. I've summarized them on the blog. I would like to point out that the quality of the applications this year was top-notch. Thanks to the applicants for putting in the effort. I hope they all put the same effort into their weekly forum updates and milestone reports :-) Congratulations to: Robert Aron (again!) Teodor Dutu Luís Ferreira Dylan Graham Ahmet Sait KoC’ak The blog: https://dlang.org/blog/2021/08/30/saoc-2021-projects/ Reddit: https://www.reddit.com/r/d_language/comments/pehbrq/symmetry_autumn_of code_2021_projects/Some really ambitious projects there! I look forward to seeing those implemented. -Steve
Aug 30 2021
On Monday, 30 August 2021 at 12:47:11 UTC, Mike Parker wrote:Five projects have been selected for SAOC 2021. I've summarized them on the blog. I would like to point out that the quality of the applications this year was top-notch. Thanks to the applicants for putting in the effort. I hope they all put the same effort into their weekly forum updates and milestone reports :-) Congratulations to: Robert Aron (again!) Teodor Dutu Luís Ferreira Dylan Graham Ahmet Sait KoC’ak The blog: https://dlang.org/blog/2021/08/30/saoc-2021-projects/ Reddit: https://www.reddit.com/r/d_language/comments/pehbrq/symmetry_autumn_of_code_2021_projects/Hyped by ProtoObject, this is our hope for a nothrow nogc .destroy eventually!
Aug 30 2021
On Monday, 30 August 2021 at 16:03:29 UTC, Guillaume Piolat wrote:Hyped by ProtoObject, this is our hope for a nothrow nogc .destroy eventually!This fails today only because of the rt_finalize hook working through void*. If you cut that out... --- class Foo { ~this() nogc nothrow {} } void main() nogc nothrow { scope auto foo = new Foo(); foo.__xdtor(); } --- this works today. .destroy does this if it is an extern(C++) class, but not for a D class. It isn't limited by Object though. I think the templated druntime hooks might make more of a difference here than protoobject.
Aug 30 2021
On Monday, 30 August 2021 at 16:12:57 UTC, Adam D Ruppe wrote:On Monday, 30 August 2021 at 16:03:29 UTC, Guillaume Piolat wrote:I thought the problem with this was that destructors aren't virtual, so if you write something like this: --- class Foo { ~this() { } } class Bar : Foo { ~this() { } } void main() { Foo foo = new Bar(); foo.__xdtor; } --- ...then you end up calling Foo's destructor, but not Bar's. That's why rt_finalize uses TypeInfo to look up the destructor for the object's runtime type.Hyped by ProtoObject, this is our hope for a nothrow nogc .destroy eventually!This fails today only because of the rt_finalize hook working through void*. If you cut that out... --- class Foo { ~this() nogc nothrow {} } void main() nogc nothrow { scope auto foo = new Foo(); foo.__xdtor(); } --- this works today.
Sep 01 2021
On Wednesday, 1 September 2021 at 18:20:59 UTC, Paul Backus wrote:On Monday, 30 August 2021 at 16:12:57 UTC, Adam D Ruppe wrote:we can use custom destructors: ```d class Foo { ~this() nothrow nogc {} void destroy() nothrow nogc { __xdtor(); } } class Bar : Foo { override void destroy() { super.destroy(); } } void main() { Foo foo = new Bar(); foo.destroy(); } ``` I dont know why destructors are not virtual. This makes sense for constructors as the correct instance size is required but not for destructors.On Monday, 30 August 2021 at 16:03:29 UTC, Guillaume Piolat wrote:I thought the problem with this was that destructors aren't virtual, so if you write something like this: [...] ...then you end up calling Foo's destructor, but not Bar's. That's why rt_finalize uses TypeInfo to look up the destructor for the object's runtime type.Hyped by ProtoObject, this is our hope for a nothrow nogc .destroy eventually!This fails today only because of the rt_finalize hook working through void*. If you cut that out... ``` class Foo { ~this() nogc nothrow {} } void main() nogc nothrow { scope auto foo = new Foo(); foo.__xdtor(); } ``` this works today.
Sep 01 2021
On Wednesday, 1 September 2021 at 22:23:59 UTC, user1234 wrote:I dont know why destructors are not virtual.https://dlang.org/spec/class.html#destructors "There can be only one destructor per class, the destructor does not have any parameters, and has no attributes. It is always virtual. " I guess it is virtually virtual due to the rt_finalize implementation papering it over. But you can write a destroy function to do this too by looking up the base class xdtor as well (I'm pretty sure anyway). My point is really just that protoobject is almost certain to have exactly the same destructor situation as object....
Sep 01 2021
On 8/30/21 5:47 AM, Mike Parker wrote:Ahmet Sait KoC=E2=80=99akBeing a fellow Turkish, I am curios why his last name is spelled that=20 way. Unless it was sepecially requested by him, I would use the=20 following obviously correct spelling: Ahmet Sait Ko=C3=A7ak Ali
Aug 31 2021
On Wednesday, 1 September 2021 at 04:56:28 UTC, Ali Çehreli wrote:On 8/30/21 5:47 AM, Mike Parker wrote:That's how it was submitted in the application. I simply copy-pasted.Ahmet Sait KoC’akBeing a fellow Turkish, I am curios why his last name is spelled that way. Unless it was sepecially requested by him, I would use the following obviously correct spelling: Ahmet Sait Koçak Ali
Aug 31 2021
On Wednesday, 1 September 2021 at 06:44:53 UTC, Mike Parker wrote:On Wednesday, 1 September 2021 at 04:56:28 UTC, Ali Çehreli wrote:Must have been an encoding issue with the mail then. I don't mind though.On 8/30/21 5:47 AM, Mike Parker wrote:That's how it was submitted in the application. I simply copy-pasted.Ahmet Sait KoC’akBeing a fellow Turkish, I am curios why his last name is spelled that way. Unless it was sepecially requested by him, I would use the following obviously correct spelling: Ahmet Sait Koçak Ali
Sep 01 2021
On Wednesday, 1 September 2021 at 10:32:19 UTC, Ahmet Sait wrote:Must have been an encoding issue with the mail then. I don't mind though.I updated the blog as soon as I saw Ali's post.
Sep 01 2021