Differences between D2.0 and D1.0
Robert Fraser
fraserofthenight at gmail.com
Mon Nov 19 14:23:00 PST 2007
Paul Anderson wrote:
> Is there a summary somewhere of the differences between 1.0xx and 2.0xx?
>
> This would be handy for someone making a choice for development:
>
> Does 2.0 have a "must have" feature that 1.0 doesn't?
>
> Is the feature I'm relying on in 1.0 going to go away someday?
>
> Is the feature I like only in 2.0 and subject to change or elimination?
>
> I know the intent of the 1.0 version was to have a "stable" base, but having 2.0 in the background doesn't make me confident about committing to 1.0. I'd like to have a place where I could see what I was getting/giving up.
>
> Paul
Check the changelog for 2.0; you'll see a number of features. The big
ones I think are:
* Const (which is going to be changing in the next few releases)
* C++ interface
* __traits
* Closures
* Overload sets
* Foreach range statement
* opStar
1.0 is stable, and will remain so. Most 1.0 features will probably
remain in 2.0, also. Right now, 2.0 is in turmoil (the const thing is
going to change soon), so I'd recommend sticking to 1.0 if you're new or
want to do any real work, while 2.0 is great for exploring & smaller
projects where maintainability isn't as big a deal.
1.0 does get a few breaking changes, though -- most notably, a paser
bugfix eliminated the ability to do:
version(Windows) { extern(Windows): }
else { extern(C): }
It also changed the .init default property from a variable initializer
to a type initializer, which broke some code (and killed a very cool
feature, IMO).
More information about the Digitalmars-d
mailing list