Could D have fit Microsoft's needs?

XavierAP n3minis-git at yahoo.es
Fri Jul 19 21:03:50 UTC 2019


On Thursday, 18 July 2019 at 23:49:00 UTC, Mike Franklin wrote:
> On Thursday, 18 July 2019 at 23:00:03 UTC, bauss wrote:
>> Microsoft has published article about needing a safer system 
>> programming language.
>> https://msrc-blog.microsoft.com/2019/07/18/we-need-a-safer-systems-programming-language/
>>
>> Could D (Most likely as betterC) have fit into that domain OR 
>> is it not yet safe?
>
> I knew this day would come, and while I hoped in my heart it 
> would be D, I understand why it isn't.
>
> I speculate this is an inflection point in the industry.  
> Walter himself even predicted it with his "memory safety will 
> kill C" prediction at DConf a couple of years ago.  Others will 
> likely follow, and I dread the day my employer comes to me and 
> says "Do you know Rust?".
>
> I think D could meet Microsoft's needs, but only if they forked 
> it and made some fundamental changes to remove the technical 
> debt, remove some of the "weird sh**" 
> (https://youtu.be/TkNep5zHWNw?t=1378), and a number of other 
> things we all could list to make using D a more professional 
> experience.  The D Language Foundation is doing some of that 
> with the copy constructors, the new object hierarchy, 
> templating druntime, etc. but it all happens too slowly.  
> Regardless, I will continue with my part, at least for the time 
> being, but it is an opportune time for some self-reflection.

Great thread! And very interesting article from MS, and the fact 
that they're interested in Rust.

Technical debt and inconsistency (weird shit) subtract indeed 
from D's great promises. After claiming that C++ is insalvageable 
we now see that the Devil is in the details, and it isn't so easy 
to keep a language clean over the years and over the features. 
The simple story was that C++'s original sin had been building 
over C and taking over unsafe stuff, the preprocessor and 
whatnot; but now that we see the difference between theory and 
practice, maybe C++ didn't do such a bad job of staying 
relatively sane over 30 years; and compiling C as C++ was 
probably, as originally and naively assumed, a huge benefit 
despite the cost (see now Atila's dpp).

I disagree that D can't fill the role because it aims at both 
systems and productivity. This is potentially a good thing -- and 
I think that all real success stories of D take advantage of this 
primarily (e.g. Weka).

I think the problems may have persisted because nothing is 
modular inside D, in its private implementation. Everything in 
the runtime and the std library depends on everything else and is 
tangled together. This can make as difficult to make GC optional 
outside the std library, as to fix any one piece of weird shit.

Still the only problem with D is ultimately low adoption. It has 
many causes, lack of corporate sponsor, of promotion, and other 
unknowable or random ones. Weird shit feeds back negatively, if 
it causes friction when people consider adopting, because if 
adoption was higher weird shit could be fixed in reasonable time.


More information about the Digitalmars-d mailing list