On Saturday, 30 November 2013 at 02:57:54 UTC, Nick wrote:
On Friday, 29 November 2013 at 15:23:13 UTC, Andrei
Alexandrescu wrote:
On 11/29/13 5:43 AM, Manu wrote:
* ARC
* rvalue -> ref
* virtual-by-default
* GC improvements
* AA fixes
These are good themes but a conversation with one of the
bountysource founders revealed to me that smaller, precise
tasks for moderate amounts tend to do better than large
projects that are only partially specified, even for large
amounts.
We should break each of these down into bite-sized bugzilla
issues.
Andrei
A bite-sized GC-related improvement is the @nogc attribute I've
been craving for for quite some time. See:
https://d.puremagic.com/issues/show_bug.cgi?id=5219
If I had money, I'd be putting it on this for sure. For system
and game programmers it's a godsend, and it will put some C++
fanatics at ease with D's GC. With this feature I can protect
the critical sections of my code with a firm guarantee that I
won't see any unexpected activity from the GC.
DIP46 can help:
http://wiki.dlang.org/DIP46
Quote:
A further observation is that class GC has virtual functions in
it. This opens up the possibility of doing a gc_push() with a
different GC. Two possibilities come to mind:
1. Allocate-but-never-free, like DMD does. This would be very
fast.
2. Assert-on-any-allocation, used for code that wants to be
"nogc". This avoids the complexity of adding a "nogc" attribute
to D. More discussion of "nogc":
https://github.com/D-Programming-Language/druntime/pull/493