It is the year 2020: why should I use / learn D?

Aurélien Plazzotta iam at gmail.com
Fri Nov 16 03:50:55 UTC 2018


On Friday, 16 November 2018 at 02:02:26 UTC, H. S. Teoh wrote:
>
> Talking about D3 has sorta become taboo around here, for 
> understandable reasons -- splitting the community now might 
> very well be the death of D after that Tango vs. Phobos fiasco.
>  Python survived such a transition, and Perl too AIUI.  But D 
> currently does not have nearly the size of Python or Perl to be 
> able to bear the brunt of such a drastic change.
>
> Nevertheless I can't help wondering if it would be beneficial 
> to one day sit down and sketch out D3, even if we never 
> actually implement it. It may give us some insights on the 
> language design we should strive to reach, based on the 
> experience we have accumulated thus far. Autodecoding, even 
> though it's a commonly mentioned example, actually is only a 
> minor point as far as language design is concerned.  More 
> fundamental issues could be how to address the can of worms 
> that 'shared' has become, for example, or what the type system 
> might look like if we were to shed the vestiges of C integer 
> promotion rules.
>
>
> T

I can't help but think D3 is the one true way to go to become 
significantly adopted by more companies.
Even though D2 is used by several companies, it still remains a 
very marginal language and a migration with no backward 
compatibilities wouldn't be a much a thing to deal with.
Maybe ten companies are using D for minor projects, it doesn't 
justify to stall or slow down the whole language specs.

The language is still in a phase where it can allow himself 
breaking changes to significantly improve its performances or 
reduce the frictions and asymetries.

However, I wouldn't gamble a penny on D3 for more practical 
reasons.
The creators and the main contributors of D are all C++ full-time 
developers and some of them even members of C++ commities. For 
example, Walter distribute and commercialize a C++ compiler and 
Andrei contribute to C++ meeting in order to identify and improve 
the weaknesses of C++...

So why should they care about a D3 branch?

No offense, but I don't think anyone important here believe in D 
becoming a industry-proof language in any timeline. In my opinion 
and with due respect, I am convinced that D is more or less 
processed like a research laboratory to test and implement new 
features to then improve C++ specs and its standard librairies.

The D project, despite of its elegant design, isn't in pursuit of 
becoming a successful language himself but a successful sandbox 
for other mainstream languages (e.g. C++, C#).

I hope I am wrong but after 2 years toying with the language for 
home projects and reading the changelogs and the forums, it is my 
overall impression that something is wrong and cannot be ignored.

D cannot grow and develop its own identity if the main focus is 
C/C++ compatibility.
Make no mistake, nobody will abandon his job in C++ among the D 
community to persuade a employer to hire him for a D full-time 
job (and thereby not contributing to the success of D), if it 
does'nt do anything else but operate with they already-used C++.
History has showed us that trying to tease and please to C++ 
community does not help D to be adopted in industry.

I wish I haven't hurt anyone's feelings but D project lack a bit 
of long-term vision.
And it scares me to never use D in my professional life.


More information about the Digitalmars-d mailing list