On Friday, 30 August 2013 at 21:11:32 UTC, Andrei Alexandrescu
wrote:
* typedef: it was so ill defined, bringing it any closer to
sanity would've broken someone's code.
I haven't heard about any specific troubles with typedef which
are reason to depreciate the feature. In addition to typedef some
other features are also experiencing troubles (shared, ref,
properties, invariants,..) yet they are not deprecated.
* delete: a festering dung of unsafety straight in the middle
of the language.
It was useful to delete class objects at the time where
programmer knew that he can delete safely to mitigate the problem
of dangling references upon class finalization (by invoking dtor
when objects are alive). Right now there is no way to do that. By
the way, currently dmd accepts putting @safe attribute on class
dtor definitions which access GC objects - this is a hole in
@safety (accessing such elements is not a sufficient reason to be
hole in safity, but not reseting pointers to null is).
If there's enough argument that the functionality of delete is
actually desirable we can always add a function for that.
Probably yes.
* scope: cute and dangerous in equal proportions - great for a
movie character, terrible for language design.
Andrei
I cannot remember any feature implemented in phobos that was
better then built-in language construct, including scope. Hasn't
C++ followed the same policy and at the end it was considered as
mistake? At least D has many built-in features comparing to C++
and this is advertized as an advantage.
- Re: assert() vs. enforce(), invariant() vs. ... ? John Colvin
- Re: assert() vs. enforce(), invariant() vs. ... ? Namespace
- Re: assert() vs. enforce(), invariant() vs. ... ? Joseph Rushton Wakeling
- Re: assert() vs. enforce(), invariant() vs. ... ? John Colvin
- Re: assert() vs. enforce(), invariant() vs. ... ? Maxim Fomin
- Re: assert() vs. enforce(), invariant() vs. ... ? Namespace
- Re: assert() vs. enforce(), invariant() vs. ... ? H. S. Teoh
- Re: assert() vs. enforce(), invariant() vs. ... ? Andrei Alexandrescu
- Re: assert() vs. enforce(), invariant() vs. ... ? H. S. Teoh
- Re: assert() vs. enforce(), invariant() vs. ... ? Timon Gehr
- Re: assert() vs. enforce(), invariant() vs. ... ? Maxim Fomin
- Re: assert() vs. enforce(), invariant() vs. ... ? Andrei Alexandrescu
- Re: assert() vs. enforce(), invariant() vs. ... ? Andrej Mitrovic
- Re: assert() vs. enforce(), invariant() vs. ... ? Jacob Carlborg
- Re: assert() vs. enforce(), invariant() vs. ... ? Andrej Mitrovic
- Re: assert() vs. enforce(), invariant() vs. ... ? Jacob Carlborg
- Re: assert() vs. enforce(), invariant() vs. ... ? Andrej Mitrovic
- Re: assert() vs. enforce(), invariant() vs. ... ? Jacob Carlborg
- Re: assert() vs. enforce(), invariant() vs. ... ? Andrej Mitrovic
- Re: assert() vs. enforce(), invariant() vs. ... ? Piotr Szturmaj
- Re: assert() vs. enforce(), invariant() vs. ... ? Andrej Mitrovic