“C++ as a language of the 21st century” is the title of the lecture given by Bjarne Stroustrup, The designer of this programming language, Stroustrup, spoke today, February 26th, at the Faculty of Sciences of the University of La Laguna. In his talk, Stroustrup addressed those who still use C++ as if we were in the last century. He explained how some of the language's features work together, how to use them correctly, and how to write more efficient, sustainable, and secure code. Furthermore, he emphasized that it is not enough to apply outdated techniques or limit oneself to the most recent features. The key to writing good code is to take advantage of everything C++ has offered since its creation in 1979.
Stroustrup, author of numerous manuals and studies related to this programming language, such as "The C++ Programming Language" (4th edition), has pointed out that C++ is present in virtually every infrastructure. From mobile phone voice recorders and web browsers to much of the software in cars and Google search, many systems depend on this language. Furthermore, the researcher has emphasized that, although languages like Python or JavaScript are more visible, JavaScript search engines and numerous Python programs rely on C++. Thus, C++ is at the core of the operation of many essential applications.
C++ combines direct hardware support with abstraction at no extra cost, allowing you to write efficient and understandable code without sacrificing performance. Unlike C, from which it evolved and which requires direct management of pointers and memory, C++ offers more advanced tools. For example, it allows you to define a vector that works similarly to how it would in mathematics, but without losing efficiency. This combination of elegance and performance makes C++ a unique language.
Stroustrup believes that C++'s success was unpredictable, as it lacked the backing of a large corporation. In fact, the Danish researcher has revealed that, at the time, he only had a $5,000 advertising budget for three years. Despite this, he managed to make it thrive because it addressed a key need in software evolution: as memory increased and processors became faster, it was crucial to manage code complexity without compromising high performance. An example of this can be found in optimizing battery consumption in mobile devices, where efficient resource usage contributes to extending battery life.
Stroustrup has also noted that he designed C++ to evolve and improve over time. Always aiming for an elegant and efficient language, he has expressed interest in adding a component called profiles in the coming decades, which will establish rules for writing better code in specific domains and ensure compliance.
Furthermore, he believes better support for concurrency is needed. This is already being used by Nvidia and Facebook, and is expected to become part of the standard next year. He is also working on developing static reflection, which allows writing code that uses information the compiler already knows about the program, making code generation easier at compile time. Finally, he highlighted the reintroduction of coroutines and improvements to libraries, which will further optimize development in C++.
Regarding quantum computing, Stroustrup pointed out that, although he is not an expert on the subject, he considers a quantum computer to be a specialized device that requires software for its management. Thus, C++ becomes a fundamental option for managing these systems. Furthermore, he highlighted that this code is already being used in the development of quantum computers and in
almost all areas of computing, such as hardware manufacturing, microelectronics, and software testing.
As part of his commitment to the evolution of C++, Stroustrup actively participates in the ISO standardization of the language. His academic and professional career reflects his deep understanding of the world of computer science. He is a member of the U.S. National Academy of Engineering. He holds a master's degree in mathematics from Aarhus University, where he is an honorary professor. At the University of Cambridge, where he is an honorary fellow of Churchill College, he earned his doctorate in computer science. He led the Programming Research department at AT&T Bell Labs from its inception until 2002. For his work, he has received numerous awards, including the 2018 Charles Stark Draper Award, the 2018 IEEE Computer Society Computer Pioneer Award, and the 2017 IET Faraday Medal.


