D is such a cool language. I am having a lot of fun writing my new hobby project in it. It's not corporate-dictated, memory-safe with an easy opt-out when needed, and retains all the cool features from C++.Such a disgrace it never got popular and instead we got an obstructionist language with a nonsense syntax and a brutally slow compiler.
>>107728228what's the use case of actually using D instead of just using the betterc compiler feature it has?
>>107728228I couldn't have said it better myself, OP.
>>107728228Based. If troons had known about it, they all would have ack'd sooner.
>>107728283It's nice to use the runtime when writing a desktop app, for example. Also, the std has json support out of the box which C++ doesn't have.
>>107728228Yes it absolutely does. I use it for big buck commercial software. D's biggest problem is it is very bad at cheerleading itself and selling it to people who unfortunately get steered to Rust or Go or Zig instead. It literally is the best language you're not using. The metaprogramming and reflection capabilities are off the absolute chain and it is syntactically a million times cleaner and more elegant than any alternative. It also natively imports and links against C. Got a C library? Congrats, you have a D library.
>>107728228>all the cool features from C++So function overloading, the auto keyword, and lambdas?Sounds like a shit language (just like C++)
>>107728373All implemented better than C++. D mogs C++ so hard it's unreal.
>>107728379Think of it as c++ without the pozz and backwards compatibility with plain C that doesn't feel like you dumped that shit on top of it without any care.
>>107728373Let me see: templates, compile-time expressions, RAII (in D as an opt-in thought), multi-paradigm support, ranges. Quite a few with many others not listed, and D adds more to it.
>>107728228Beef > C# > D > C++ > C > being muslim
A lot of my hobby projects are written in D and I really like writing in it. What I think would benefit it though is better tooling. Especially auto-complete with auto-import. Currently using neovim with serve-d as LSP implementation and while it does some things it clearly lacks functionality.Often times it has no idea what type an "auto" variable has. Even if it knows the type, UFCS is not supported. I wish pressing dot would suggest any kind of method that is applicable to that type (from all available functions in std or own code).Right now I keep looking at the docs to find what I am looking for instead of doing everything in the editor.Using IntelliJ at work really shows how much of a difference a good IDE makes.
>>107728348>Got a C library? Congrats, you have a Cnile buffer overflows in your D code.
If you can afford garbage collection just use Java at that point
>import std.stdio;, not std.ioWhy???