Bjarne Stroustrup

The Design and Evolution of C++

Manage complexity without sacrificing speed. Bjarne Stroustrup explains the core C++ design principle of zero-overhead abstractions.

The Design and Evolution of C++
#1about 6 minutes

The origins and motivation behind creating C++

C++ was created to combine low-level system control with high-level abstraction for building complex systems like a Unix cluster.

#2about 7 minutes

Core design principles and the language evolution trilemma

C++ is guided by principles like zero-overhead abstraction and direct hardware mapping, while balancing the conflicting demands of simplification, new features, and backward compatibility.

#3about 4 minutes

How the ISO committee standardizes and evolves C++

The C++ language is evolved through a large, consensus-driven ISO committee composed of industry representatives and national bodies.

#4about 5 minutes

Guaranteed resource management using RAII and destructors

The RAII pattern uses constructors and destructors to ensure resources like memory, locks, and file handles are automatically and predictably released.

#5about 5 minutes

Core strategies for achieving high performance

C++ achieves efficiency through a compact memory model, value semantics, inlining, and moving computations to compile-time with `constexpr`.

#6about 5 minutes

Concurrency support from memory models to coroutines

C++ provides robust concurrency support through a formal memory model, threads, locks, lock-free programming, and high-level features like coroutines.

#7about 11 minutes

Evolving the type system for generic programming with concepts

C++ generic programming evolved from unconstrained templates to type-safe concepts, enabling more expressive and safer code with better error messages.

#8about 5 minutes

Faster compile times and better organization with modules

C++20 modules replace the slow and fragile header inclusion system, offering strong encapsulation and dramatically faster compilation speeds.

#9about 3 minutes

Adopting modern C++ with the core guidelines

The C++ Core Guidelines project helps developers write modern, safe, and efficient code by promoting best practices and avoiding outdated patterns.

#10about 9 minutes

Q&A on language design, Rust, and the future of C++

Bjarne Stroustrup answers audience questions about giving advice to his past self, the evolution of other languages like Rust, and his ongoing role in guiding C++.

Related jobs
Jobs that call for the skills explored in this talk.
tree-IT GmbH

tree-IT GmbH
Bad Neustadt an der Saale, Germany

54-80K
Intermediate
Senior
Java
TypeScript
+1

Featured Partners

Related Articles

View all articles
CH
Chris Heilmann
All the videos of Halfstack London 2024!
Last month was Halfstack London, a conference about the web, JavaScript and half a dozen other things. We were there to deliver a talk, but also to record all the sessions and we're happy to share them with you. It took a bit as we had to wait for th...
All the videos of Halfstack London 2024!

From learning to earning

Jobs that call for the skills explored in this talk.