I’ve never used D but this really makes me want to give it a shot. Did anyone try it, and would you recommend using it?
I like the idea of the D programming language but I think I’ll never use it:
- There were issues with multiple compilers in the past and I don’t know if it’s solved.
- I can do the same in Python.
- No companies I know use it, which means it would not be useful for me. I’m mostly looking for C++20 or Rust jobs, I wouldn’t know where to find D jobs.
- D was supposed to be an alternative to Java or C++, but those languages have moved fast in the past few years. C++ is easier than ever and still very powerful, Rust exists if I want safety and low-level simplicity, Kotlin is there and it’s fast too. I don’t know where D fits nowadays and which problem it’s trying to solve.
The language looks nice, but it feels like it’s in a weird position around all the other languages.
DMD is the reference implementation as far as I know, so I don’t think they have the same issue that C and C++ have with regards to needing to have a standard that pleases everyone. I agree that it has an issue positioning itself relative to other languages, but to me D is the good kind of boring. It has most of what you need, there is very little that is surprising in it, if you find yourself needing to do something, probably D has an easy-ish way of doing it.
I don’t know where D fits nowadays and which problem it’s trying to solve.
My experience has been similar - it’s hard to categorize the language.
As a low-level system language like C, C++, Rust, Zig? The garbage collector makes it a hard sell to other people, even though one can opt out of it.
As a higher-level application language like Java and Go? D frequently gives me a “low-level language” feel, but I am not sure why.
As a scripting language? I feel like its type system works against the rapid-prototyping coding style commonly seen in scripts.
reference compiler closed source
Is it still closed source? What is the reason?!
I think it is Open Source now, see https://github.com/dlang/dmd
AFAIK the backend is based on the Zortech C/C++ backend and Walter Bright had to get permission from Symantec to relicence as Open Source.
Yeah, C# and Rust, in their own ways, pretty much covered what D lang set out to do.
I been using D for like… 10 years or something. The biggest problem D faces and has always faced is the leadership’s lack of direction. If you lurk their forums you know what I mean.
I still hope for a D3 one day where the language is redesigned from the ground up, not that D2 is bad but it has a lot of features that never really matured properly. I really truly believe a redesign could clean up all the rougher parts and revitalize interest in the language but my hope will probably never get fulfilled.
Still use it tho…
Between the lack of null safety (which really shouldn’t have been a thing since the 90s), the incapacity in community management and lack of focus of the core devs mentioned by Gnome Kat and glad_cat, I tried Dlang in roughly 2015. It was an OKish experience for trivial tasks, but I noticed the amount of churn in dub packages.
TL;DR: I would not. And for the same reasons, I wouldn’t recommend Scala either.
FYI: There is a Linux distro that bets heavily on D Lang, Serpent OS.