The C and C++ languages are no longer favored by the highest American authorities. Indeed, the White House wishes for developers to use memory-safe languages. In this report published on Monday, the Office of the National Cyber Director (ONCD) of the White House invites developers to reduce the risk of cyberattacks by using languages without memory vulnerabilities. IT companies “can prevent the introduction of multiple vulnerabilities into the digital ecosystem by adopting secure languages,” the presidency said in a statement. It refers to those that are protected against buffer overflow, out-of-bounds reads, and memory leaks.
From the report, we can read:
Experts have identified a few programming
languages that both lack traits associated with memory safety and also have high proliferation
across critical systems, such as C and C++.Choosing to use memory safe programming languages
at the outset, as recommended by the Cybersecurity and Infrastructure Security Agency’s (CISA)
Open-Source Software Security Roadmap is one example of developing software in a secure-bydesign manner.
As C++ developers, we can’t ignore this significant issue. However, the C++ language is continuously improving, with new features introduced every three years. I’m confident that this issue could be addressed soon. Indeed, Bjarne the C++ creator is aware of the safety issues and works on this topic. He’s created a GitHub repository, and said about this repository:
“where people can put suggestions, and where I’m going to put my drafts and such, so that we can create a community working on getting this kind of stuff done in a reasonable time.”
C++ is a very powerful programming language, and it’s not trivial to replace it with another language, as Bjarne said:
“And anyway — which other language? The way I have seen it argued, we are going to have C++ replaced by about seven different languages, as of suggestions of about now. By the time it happens — 40 years from now — we’ll probably have 20 different ones, and they have to interoperate. This is going to be difficult.”
To get a concrete idea about the Bjarn proposition, you can refer to this video:
To resume, C++ is not a dead language. It remains widely used and actively developed across various industries and domains. While newer standards and frameworks have emerged over the years, C++ continues to be a popular choice for performance-critical applications, system software, game development, embedded systems, and other domains where efficiency, control, and low-level access are paramount. However, we need to address the safety issues soon to make C++ the most powerful and secure language in the world 🙂