I started programming in C++ in the late 90's and I used to be confused about what features to use and found it easy to make a mess.<p>But I am happy I stuck with it as it opened up opportunities to work in a lot of different and interesting domains like games, mobile apps, interactive art installations, trading systems and video and film processing apps.
Also, most of my code is platform independent and very efficient.<p>There are a few interesting alternatives at the moment, namely Rust and Swift, but for now C++ does everything I want and since C++11 it really feels like a much more modern language.
"most researchers prefer an inefficient language because it's easier to get a paper to improve an inefficient language... I've seen dozens of papers on getting lisp almost as fast as C++, on getting Java almost as fast as C++. You can't do that with C++".<p>A paper from the man himself on getting a type switch in C++ almost as fast as what you get in OCaml. <a href="http://www.stroustrup.com/OOPSLA-typeswitch-draft.pdf" rel="nofollow">http://www.stroustrup.com/OOPSLA-typeswitch-draft.pdf</a><p>Lot's of other places where he's omitting things because he wants to plug C++.<p>Also, he also seems to be confused between "an efficient language" and "a language that allows you to create something that runs efficiently".
I really wish there was a "syntactic-sugar-on-top-of-C++" language that would compile down to C++ and have 100% compatibility with the existing C++ ecosystem (so that you can just directly use a class from any C++ library).<p>Something like TypeScript is to JavaScript, or like Kotlin is to Java. Would make the experience much nicer without having to wait on the slow C++ standardization process or deal with all the backwards compatibility baggage from the past (to a degree).
This video was more engaging than I was expecting. To the point that I am not sure what I was expecting.<p>There did seem to be too much apologizing for how other people messed up the original idea of C++. Same for patronizing much of the industry. I can't claim it was unwarranted, but a lot of patronizing.
No matter how elegant things are, the garbage collected, the pointers untoucheable, the libarys all optimized and readymade and the code jit-compiled to get near C - on the day your C ustomer demands that one feature too much - you want to have C ontroll.