Why is D unpopular?
Chris
wendlec at tcd.ie
Fri Apr 29 10:40:52 UTC 2022
On Tuesday, 2 November 2021 at 17:27:25 UTC, Dr Machine Code
wrote:
> It got [asked on
> reddit](https://www.reddit.com/r/d_language/comments/q74bzr/why_is_d_unpopular/) sub but for those that aren't active too, I'd like you opinions. Please don't get me wrong, I also love D, I've used it everywhere I can and I'd say it's my favourite language (yes I have one...) but I'm as as the reddit's OP, trying to understand why it's unpopular. Rust and Go seeming to be getting more and more users. I think it's due to large ecosystem and the big corporations with deep pockets that pushes them. But I'd like to know you all opinions
Two things:
1. This question keeps popping up. There must be a reason.
2. On reddit, a poster wrote:
"D was used as a POC to show some of the functionality proposed."
I don't know to which extent this is true, but D is certainly
more of a research than a real world language. What galls
ex-users is that this is not communicated clearly to newcomers.
Instead, you have to get deep into D (which, in fairness, has its
merits, because you learn a lot) before you realize that your
projects will forever be hampered by D's shortcomings. Same
shortcomings are never really addressed because D is, at its
core, a CS research language (which is slowly losing its edge
over mainstream languages like C#, C++ etc.). The language should
not be sold as production ready. I remember the "update lottery"
whenever a new version was available: will it break my code or
not? This is a situation you find yourself in with languages that
are below 1.0 and then you know what you're in for. However, D is
already 2.+. The only explanation is that in reality D is still
at a stage that is below 1.0. I've been an early adopter with
some PLs and one OS, it's always a bit of a gamble and it takes
some effort. However, those PLs and the OS have matured and
stabilized. D never ever matures or stabilizes, it just goes on
and on and on being between 0.1 and 0.9. This made it impossible
for me to create real world applications. Apart from making my
work unnecessarily difficult, how could I justify the use of an
eternal 0.x language to superiors and users? break (D) { switch; }
More information about the Digitalmars-d
mailing list