4 ms·
Computer languages are like people: some remain successful throughout their lives, some fade into obscurity after an initial popularity, some bloom in middle ag
by sidkshatriya 5y ago
Computer languages are like people: some remain successful throughout their lives, some fade into obscurity after an initial popularity, some bloom in middle age, some are excellent but never gain a following and so forth...
It's too late to pronounce any language dead. Not only is it hurtful to those who use the language, the pronouncement may also be wrong! :-)
For example, one of the languages that I really like is OCaml. You could say that OCaml is a super niche language like D. It's kinda undergoing a renaissance today with the upcoming OCaml 5.0. Some important software is written in OCaml e.g. Coq, pyre-check, flow, rescript, infer etc. I see OCaml remaining relevant and excellent in the years ahead whether or nor it amasses a huge following.
In other words, the number of people using a language is just one of the metrics you should use to assess the language. D has shown a long term resilience that is amazing. The language has been steadily improving and getting refined for a very long period of time which is admirable. So many open source projects run out of steam in a couple of years! Not the case with D!
D has a native, gcc and llvm backend. Quite amazing huh!?
One thing I would say though about D: The language needs to decide who it wants to be.
Go wants to be minimalist garbage collected language with a good concurrency/parallelism story. Rust wants to be a safer C++ with full control on memory. Java wants to be object oriented and garbage collected.
Because its mission is not clear, it ends up trying to please everyone but delight no one!
The day D decides what it wants to be _and_ this message comes from top leadership it will become much more successful! D can still achieve a lot in the future...I am rooting for D to be more successful in 2020s and beyond!
- pjmlp 5y agoI agree, but for that to happen, they have to actually finish the "next big feature" before jumping into the next one that will bring people into D.