Originally posted by caligula
View Post
Originally posted by Szzz
View Post
Even if all that D ever does is explore features that end up getting used to improve C++, that's worthwhile. And as far as I can tell C++11, C++14, etc... have borrowed more from D than they have from any other languages, so you can't even say that Go or Rust (or Scala or whatever) do a good enough job feeding ideas into the C++ standards committee.
And as far as I know there are things in D that C++ still hasn't borrowed or matched.
For one, D has the 'immutable' keyword that goes further than 'const' in C++. It has very fast compile times for both incremental compilation and build-the-world. One of the original design goals of 'Go' was fast compile times, and the last I read a comparison D still compiles faster. D ditches the preprocessor in favor of compile-time expression compilation, so you can write cross-platform code or selectively enable features like you would in C or C++ without any runtime overhead as in C or C++ but the code to do it is much simpler. I also find the D expression for templates and generics much easier to read than in C++, and I think most people new to both languages would also find D much easier to read and write. The language still has value.
As for GCC, I'm just responding to the assertion by GunpowaderGuy that GCC is 'virtually abandoned' for anything. It's very much alive. I realize git or the Linux kernel or anything else compiled with GCC could be compiled with LLVM, the only exception would be projects that make heavy use of some GCC-only extensions. The point is that many projects still do default to using GCC, which means it's really far from being almost abandoned.
Comment