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