DIP66 has been approved contingent to a few amendments as noted

Joseph Rushton Wakeling via Digitalmars-d digitalmars-d at puremagic.com
Sun Dec 28 04:09:51 PST 2014


On 24/12/14 15:27, eles via Digitalmars-d wrote:
> D2 is still looking for the best design. D1 has one, is not as good, but is a
> safer default.

Honestly, developing in D1, I personally feel that this is not so much a stable 
version as a frozen snapshot of a still-evolving language.  There are just too 
many idiosyncrasies and inconsistencies in its design (for example, the way in 
which dynamic/static/associative arrays behave).

Now, that said, in practice D1 does feel for the most part very much like a 
subset of D2 features; you could code a new project in D2, using the same design 
principles, and have pretty much identical results.  So it's entirely fair to 
see a D success story here.

With more historical resources, it might have been sane or possible to backport 
some of the relevant breaking changes -- that is, to have a D1.5 with the same 
reduced feature set but with the inconsistencies and bad design decisions ironed 
out -- but now that D2 has reached its current state, it doesn't seem worth it 
to me.  D2 may still be evolving, but it's stable _enough_, and with good change 
management (e.g. the -dip flag as discussed here) there's nothing on a 
_language_ basis that seems other than an improvement (Dicebot may have some 
counter-examples to hand, but off the top of my head, I can't think of any:-).

I suppose that we could, today, divide D2 into a guaranteed stable subset and a 
wider range of features whose final design is still up for discussion, but even 
that seems non-trivial: cf. the kerfuffle over whether class methods should be 
virtual or final by default.  (And no, please don't take this as a reason to 
re-open that discussion.)

The simple, straightforward fact is that it's hard to upgrade a large codebase 
with high performance requirements.  That's not a judgement on D2 as a 
production-ready language.


More information about the Digitalmars-d mailing list