Father of C++: Success comes from the effective use of hardware, C++ 11 is the turning point

Recently, Bjarne Stroustrup, the father of C++, was interviewed and talked about  the design ideas of C++ and the key turning point in the development of C++.

In 1979, Bjarne Stroustrup at Bell Labs started to develop the C++ language. One of the starting points of C++ is to improve the C language and increase the functionality of object-oriented programming.

Now, the C++ language has developed into one of the most popular languages ​​among developers. As of September 2020, C++ is the world's fourth most popular programming language after C, Java, and Python, and according to the TIOBE survey, C++ is also the fastest growing language . Bjarne Stroustrup believes that the success of C++ is surprising, and its success depends on the original design goal-efficient use of hardware, coupled with powerful abstraction mechanisms, and it can be carefully developed based on feedback from actual usage.

Bjarne Stroustrup wants to build a multi-computer system with a communication system. This communication system can be a shared memory or a network. The focus of Bjarne Stroustrup's choice is software, "I need to write low-level code close to the hardware, such as memory manager, process scheduling and device drivers, as well as software separation components so that they can communicate in a good way."

The early C++ work was done by Bjarne Stroustrup and several of his colleagues at the time. After trying to standardize, there were more C++ developers. 1998 was the year when C++ was formally standardized. So far, C++ has become one of the most commonly used programming languages ​​in the world. Today, the C++ Standards Committee has approximately 400 members.

Thirteen years after C++ was formally standardized, C++ 11 arrived and laid the foundation for future development. In 2011, C++ 11 was released, which was the third C++ standard. Bjarne Stroustrup said, "C++ 11 makes C++ a new language."

Type safety support for concurrency is essential. C++ 11 provides a dense network with mutually supporting functions, such as [constant expression] functions for compile-time calculations, anonymous functions, automatic type inference (type inference), and variadic templates. In addition, although C++ is known for its complexity, C++ 11 also introduces new features that are simpler, faster, and more expressive.

In addition, Bjarne Stroustrup also talked about the secret of C++'s vitality: start small, clarify basic principles, clarify long-term ideals, and guide development based on feedback from actual usage. Some simple programs in the early days of C++ have been running so far. Bjarne Stroustrup believes that stability is an important function for a system that has been used for decades. "From the beginning I knew that I could not build an ideal language, so I Gradual development must be the actual goal. Evolution is a necessary condition for coping with the ever-changing challenges of the world and integrating new ideas."

Guess you like

Origin www.oschina.net/news/120667/why-cpp-is-so-successful