5 ms·
The disdain about C++ is now so overdone that I think that people who actually sit down with the language will be pleasantly surprised.
by dman 6y ago
The disdain about C++ is now so overdone that I think that people who actually sit down with the language will be pleasantly surprised.
- naasking 6y agoPleasantly surprised at how different every C++ project is because they each have to mandate their own C++ subset in order to tame it's ridiculous complexity? I get what you're saying, C++ is worlds away from where it was even 15 years ago. Don't downplay it's complexity though.
- dman 6y agoI dont think I made any references to complexity in my tweet. All I was trying to say is that the bad news with respect to C++ is priced in and the language only has to be marginally better than what its detractors make it out to be.
- kmonsen 6y agoAll the old c++ is still here though, as always is a language where it’s hard to understand all of it.
- gpderetta 6y ago> each have to mandate their own C++ subset in order to tame it's ridiculous complexity? this one of those things that keeps getting repeated, but at least personally I have never seen in the wild.
- badsectoracula 6y agoYeah, in my experience whenever a new C++ feature becomes available there is always someone who really wants to shove it in the codebase everywhere. As Carmack once said, if it compiles, it'll find its way in your codebase.
- deleted 6y ago[deleted]
- systemBuilder 6y agoIMHO a language's complexity is proportional to the square of the number of bnf rules. By this measure C++ is a disaster. If Thompson and Ritchie had tried to write UNIX in C++ they would have certainly failed!
- virtualritz 6y agoI used C++ professionally for over 20 years until recently. What pleasant surprise(s) exactly are you talking about? Actually, never mind. After a year of Rust I see myself touching C++ code next when I'm 70 and they need some old farts to fix code no one can or wants to touch any more. And they pay five digits/day (adjusted for inflation) for that service by that time. Now that will be the only 'pleasant surprise' I presage coming from C++ to me in the foreseeable future. ;)
- dman 6y agoHere is one possible pleasant surprise if I was starting out today - if my calling in life was to be a systems programmer then learning C++ opens up a rich sea of codebases built by people who knew what they were doing in the last ~25 years. Irrespective of what language you actually choose to write your project in, if you want to learn how databases, caching servers, language runtimes, compilers, allocators, message buses, games, rendering engines, browsers, distributed systems, AI runtimes etc are implemented then the cutting edge as it exists right now is mostly written in C++. Sure I hate the notation and the language as much as the next guy but I would hesitate to turn down the learning opportunity from so many cutting edge codebases. In some ways it is analogous to math - lets say you hate the formalisms, symbols and terminology used in set-theory or in calculus, would you refuse to learn it if you knew that learning the formalism allows you to tap into 300 years of accumulated wisdom from some of the brightest minds that went on to do math?
- abjKT26nO8 6y agoC will more than suffice in this case.
- adev_ 6y ago> C will more than suffice in this case. Clearly no. Any complicated enough system software in C finish quickly in a mess of void* , macros and buffer overflow. Even making something as trivial as an hash map goes quickly in void* / macro mess in C. It is for a reason that most system side services (or game engines) are written in C++ nowadays.
- hastradamus 6y agoFrom experience: it's worse. Words can't describe it