5 ms·
I believe a related question to ask is: How many new projects are started in that niche? C still seems to spawn new software because people are working directl
by Someone1234 9y ago
I believe a related question to ask is: How many new projects are started in that niche?
C still seems to spawn new software because people are working directly with hardware and don't wish to code using straight assembly. I'm thinking computer engineering related fields. Robotics for example.
C++ falls into an uncanny valley, it is neither high level language with all of the benefits (e.g. programmer efficiency, certain security guarantees, lower barrier to entry) or a completely low level language (or at least it isn't if you want to benefit from most of C++'s advantages over straight C; you'll avoid a garbage collector but not a lot of "magic" behind the scenes).
C++ carved out a space with 3D gaming for a while but with many development houses moving to licensed game engines or targeting mobile platforms C++'s benefit may be waning.
The data does support this supposition[0].
[0] https://www.tiobe.com/tiobe-index/cplusplus/ https://www.tiobe.com/tiobe-index/cplusplus/
- bitL 9y agoAdvanced robotics is utterly dominated by C++.
- fooker 9y agoAdvanced everything is utterly dominated by C++.
- AstralStorm 9y agoNot lower bit microcontroller programming which is still dominated by C. (Because C++ compilers do not exist or produce worse code.)
- fooker 9y ago>Because C++ compilers do not exist or produce worse code. I am surprised this is still true in 2018. GCC and Clang on x86 with -fno-rtti and -fno-exceptions produce almost identical code for similar programs in C and C++. If what you say is true, I suppose there aren't enough compiler devs paid to optimize C++ for those platforms.
- AstralStorm 9y agoExactly the point. Keil doesn't care and gcc devs on smaller platforms are almost always volunteers. Clang/LLVM is not even close to supporting something lower bit.
- pjmlp 9y agoGCC and Clang are not even a thing in most microcontrollers. You buy the compiler from the same vendor that is selling you the hardware. Even if it is based on gcc, it happens to be a fork with changes they don't easily release. Some of them are now transitioning to clang, because the license makes it easier to keep doing so. Many of them are still mostly C89 (not 100% ANSI C compliant due to hardware limitations) with a few C99 features.
- electricslpnsld 9y ago> C++ falls into an uncanny valley, it is neither high level language with all of the benefits (e.g. programmer efficiency, certain security guarantees, lower barrier to entry) or a completely low level language (or at least it isn't if you want to benefit from most of C++'s advantages over straight C; you'll avoid a garbage collector but not a lot of "magic" behind the scenes). There are lots of high-level, cost free niceties that C++ provides that I miss when I have to fall back on C. Generics and RAII alone are quite nice.