When D feels unfinished: union initialization and NRVO

Paolo Invernizzi paolo.invernizzi at gmail.com
Wed Mar 18 09:46:44 UTC 2020


On Wednesday, 18 March 2020 at 06:55:24 UTC, Mathias Lang wrote:

> We've had quite a few new feature making their way in the 
> language over the past few years, but many of the old features 
> are left unfinished. We have a new contract syntax, but 
> contract are still quite broken (quite a few bugs, as well as 
> usability issues, e.g. one can't call the parent's contract). 
> We are interfacing more and more with C++, but don't have the 
> ability to control copies, and the compiler and Phobos alike 
> assume things are copiable (you can't foreach over a range 
> which has `@disable this(this)`). We want to make the language 
> `@safe` by default, but we lack the language constructs to 
> build libraries that works with both `@system` and `@safe`. Our 
> default setup for `assert` is still not on par with what C does 
> with a macro, and `-checkaction=context` is far from being 
> ready (mostly due to the issues mentioned previous). We are 
> piling up `-transition` switches 10 times faster than we are 
> removing them.
>
> This could go on for a while, but the point I wanted to make 
> is: can we focus on the last 20%, please?

As usual, my +1 for that: to be honest, years of +1 on that ...


More information about the Digitalmars-d mailing list