In a room full of software experts, IT professionals, and C++ language lovers, a Google engineer takes the stage and starts his presentation with the question: What comes next? With a puzzled look on their faces, some may have thought: if C++ is one of the most robust programming languages in the industry and is also part of an ISO standard, why is Google planning to replace C++ with something new?
This makes sense because C++ has the best performance for high-level software, with high control of computational resources and a speed that surpasses any other programming language. But it has three failures that are quite difficult to correct, for the current state of the project:
- It has been accumulating decades of technical debt, which despite being a good decision at the time, is now holding back the progress of the language. Moreover, the debt is accumulated together with the technical debt of C
- Backward compatibility makes the process of fixing technical debt more cumbersome
- As part of an ISO standard, making improvements is a slow and difficult process.
In the following article, we will discuss what Google’s strategy is to address current C++ issues.