On 09/24/2016 02:11 PM, Brad Anderson wrote:

Relevant is this list of C++17 features (many of which already work in
popular compilers).

http://stackoverflow.com/a/38060437/216300

I've got to admit, the D side of me is jealous of a few things on this
list. Structured bindings, init ifs (one of those "why did it take so
long to come up with this?" ideas), and constructor IFTI. Not sure if
it's in C++17 yet but the stackless coroutines look nice too.

The baby steps toward CTFE are welcome, of course. It appears C++ still
has a long way to go though.

Every time I go back and look at it, C++'s evolution just seems more and more like "Let's do a poor imitation of D, without really admitting it, and without doing the real fundamental cleanups that D did and C++ still desperately needs."

All the work that's gone into C++ the past decade...if even half of that had been directed into D instead, then years ago they would have already been far ahead of where they are now. But they just keep building more and more on top their busted foundation.

C++ was already kind of a monster of a language during the period I was using it most (late 90's, early 2000's). Instead of improving my opinion of it, all of this new stuff from C++11 onward merely makes me even more terrified of ever going near it again, because all it does is add more cruft when "too much cruft" was already its biggest problem to begin with.

I don't care if the political correctness wind IS blowing against it - I *still* think D's biggest strength is that it's "C++ done right". That's what drew me to D in the first place, and that's what keeps me here.

About the "if inits": Those do seem take make a lot of sense, I've hit cases where it could be used, and I have zero objection to it...but it still seems incredibly minor to me, and it just strikes me as "really, C++, you have *far* better things to be focusing on then adding yet more syntax, just for minor benefit". Like, oh, I don't know, modules maybe? Compiling in under a day? And fixing up that goofy ".cpp vs .hpp" system where so many people honestly believe it's "implementation vs interface", but if you really look at it you find the *genuine* truth of "what goes in which file" is really far, FAR more random than that. Seriously, last time I used C++, I was amazed: It is INSANE how much of a load of BS the conventional wisdom is about header files being "interface" - there is a TON of implementation shit that must be in the so-called header. May have been true in C (if you ignore macros), but definitely not in C++.


Reply via email to