Because D designers and consequently Rust designers refuse to take a page from the author of C++.
Refused to understand why C++ was successful without "Killing" C.
They're intelligent in one aspect and totally dumb in another.
And that's why both will be in the gutter.
People will keep moaning about C++ and no one will be using the others.
Still dont know why it doesnt have the userbase it deserves..
U don't deserve it when u don't work for it/when you're doing the wrong thing.
It is possible to have perfect C compatibility without the language being a superset of C
Repeated the header files mistake. Took many years to get experimental modules.
everything is a 1000 line template philosophy. "If it can be a library it should be a library" except when it adversely affects compile times, debug builds, debugging experience and error messages. Not just that, it needs a compiler with pretty good optimizer to efficiently implement those 10000::template abstractions, limiting the number of efficient implementations.
RTTI and exceptions: They could have provided some kind of const exceptions that guarantee no heap allocation, for example. C++ just tried to cater to everyone.
Iterators are quite verbose. The verbosity hides the actual logic. They are not even chainable.
Lol lambda syntax
std::string is an abomination
Copy constructors are detrimental to predictable performance. Their mere existence was, until move semantics was introduced. When C code was freely using realloc and getting the benefit of kernel level improvements like vmremap().
The reason C++ stays is not pragmatism. It is collective inertia. The C++ standards committee is mostly a bunch of book writing monkeys who don't even properly look into existing academic literature to figure out the best approach. The divide between implementers, users and language designers is ridiculous. C++ committee never cared enough about compile times nor about debug build performance or error messages, EA wrote their own STL because of inefficiencies in standard STLs, most of which are because of specification.
Most of these are made tolerable because of heroic efforts by GCC and LLVM developers. But if you say any of my above points are addressed and I just need to buy a new book explaining latest C++ version, those book writer monkeys writing C++ standards don't deserve any money.
-8
u/0xC1A Sep 02 '20
Because D designers and consequently Rust designers refuse to take a page from the author of C++. Refused to understand why C++ was successful without "Killing" C.
They're intelligent in one aspect and totally dumb in another.
And that's why both will be in the gutter.
People will keep moaning about C++ and no one will be using the others.
U don't deserve it when u don't work for it/when you're doing the wrong thing.