Better make it a new language instead of destroying the C++ that we already have. |
It can be argued C++ is already enough of a Frankenstein's monster creation that deserves being redone as a new language. That's what we get when a committee does the ongoing design.
C++11 was enough of a watershed change it should be considered a new language from what came before. C++20 is almost as much of a paradigm shift with importing modules vs. including headers.
The ISO committee has deprecated and removed some features such as
std::auto_ptr and
std::random_shuffle before , but some serious pruning still needs to take place IMO.
Too many people still rely on the C random number generation functions when C++ has the capability.
https://web.archive.org/web/20180123103235/http://cpp.indi.frih.net/blog/2014/12/the-bell-has-tolled-for-rand/
Is the C++ <random> library perfect? Absolutely not, there are other means available 3rd party.
C++ isn't sluggish, it is compiled to direct machine code. Java and Python require a VM layer to run the translated byte-code.
C++ apps, at least on Windows, has a C Runtime Library that gets started when running a C++ compiled app. The number of support libraries needed goes up if you use GCC or other non-Visual Studio compilers.
Or you can statically link the library code but that bloats up the app size.
The
hoo-man readable source code is another argument altogether. C++ doesn't hold the programmer's hand as much as Java or Python do IMO. There are coding and performance considerations that need to be evaluated when choosing what language to use.
C++ could have been simpler but I don't think it could ever have been as simple as Java. |
Ain't that the truth!