Member-only story
Why C++ is a Bad Substitute for C
I have written some stories about replacing the C programming language:
For almost all these stories, I get puzzled responses, asking why I am not suggesting C++ as an alternative. For those who have drunk the C++ Kool-Aid, C++ is really a C replacement in their mind. It is a language better than C in every possible respect. I know because I was a huge fan of C++ 15 years ago. That is how C++ was always presented back then. It was the improved sequel to C. But C++ is much like a Hollywood sequel. It overdoes everything to the point where all the magic of the initial version is lost. It is akin to when a movie has no story only explosions and action sequences. That is kind of what C++ is. It isn’t a language. It is just a big bucket of features. None of it is organized according to any kind of sane vision, much like a Hollywood blockbuster sequel.
If you are going to replace C, you need a couple of very important selling points about C:
- Simplicity — C is a relatively simple language, which you can learn in relatively short time, even if it takes much longer to truly master.
- Transparency — There is very little magic in C. There is a close connection to the code you write and the machine code that is generated.