Isn't it about time for D3?

Joakim via Digitalmars-d digitalmars-d at puremagic.com
Sat Jun 10 17:06:13 PDT 2017


On Saturday, 10 June 2017 at 23:30:18 UTC, Liam McGillivray wrote:
> D is a language with much promise, but it still has many 
> problems that prevent it from being the great replacement for 
> C++ that it was always meant to be.
>
> There have been many changes suggested over time to improve the 
> language, but they were rejected as they would inevitably cause 
> breaking changes.  I think that breaking changes are something 
> to be careful about, and they can definitely be a nuisance to 
> adapt to.  But they must happen once in a while for things to 
> advance.
>
> I think it's about time for D3 to start developing.  So many 
> suggestions for language changes have accumulated by now so I 
> think that it's time to introduce to introduce the next wave of 
> breaking changes.
> It's nice to see that there's a wiki page that documents the 
> history of suggested language changes. I applaud the 
> organization.
> https://wiki.dlang.org/Language_design_discussions
>
> I realize that there are people who want to continue using D as 
> it is, but those people may continue to use D2. Putting the 
> breaking changes in a separate branch ensures that DM won't 
> lose current clients as they can just continue using D2 as they 
> are. Even after D3 is stabilized, D2 could have continued 
> support until nobody wants it.
>
> In Lua (a language with a bigger past and hopefully smaller 
> future than D), breaking changes are introduced in even minor 
> versions.  While I do think that's excessively frequent, there 
> are still users of Lua 5.1.  Making D3 doesn't mean that D2 has 
> to die.
>
> I feel like D3 would see significantly wider adoption than D2 
> ever got, as long as it successfully solves the problems of D2.
>
> Here are some ways that D3 can be an improvement of D2:
> -Final by default
> -A standard library that is effective with or without garbage 
> collection
>
> Even Andrei has admitted some issues with D when answering this 
> Quora question:
> https://www.quora.com/Which-language-has-the-brightest-future-in-replacement-of-C-between-D-Go-and-Rust-And-Why
>
> Even if you don't want to release a D3 too soon, I think it 
> definately makes sense to get started sooner rather than later.
>  D3 should be developed for the same reason that D was first 
> developed; to make a better programming language that learns 
> from the problems of the one before.

Dev resources are stretched thin as it is, I doubt the core team 
would go for it.  For example, the vast majority of the work on 
the main compiler frontend in the last year was done by one 
person, 3-5 if you're being generous:

https://github.com/dlang/dmd/graphs/contributors?from=2016-05-01&to=2017-06-10&type=c

I think we need to build that team up before we consider 
branching again.  While it has now been longer since the D2 
branch than from the beginning to D2, I get the impression the 
core team is nowhere near finished with D2, to the point where 
they want to branch again.

While I personally think a D3 branch now would make sense on the 
technical merits, I doubt we're at an organizational state where 
we can afford it, ie not enough manpower.


More information about the Digitalmars-d mailing list