Keynote: What C++ is and what it will become
summary
C++ combines low‑level hardware mapping with high‑level abstraction and claims to keep the cost where it’s used: zero-overhead abstraction. The language adds move semantics so large return values avoid copies, and constexpr lets the compiler compute constants like a weekday at compile time. Concepts give early, readable template errors; modules promise dramatic compile savings—176 bytes of source can expand to 400K in GCC or 1.2M in clang today—so modules reduce parse size and speed build times. Tools and checkers hunt ownership leaks.
AI-written summary · about
chapters (24)
- 0:00Start
- 0:15Overview
- 2:50The origin of C++
- 5:04Programming Languages
- 7:59C++ in two lines
- 10:44Zero-overhead abstraction
- 15:47Constructors and destructors
- 17:24What matters?
- 20:05C++'s role
- 23:01Evolution
- 24:57Theme: Make simple things simple
- 27:49Theme: Concise expression of ideas
- 29:32C++11: 10+ years of experience added
- 30:17Features works in combination
- 33:16Theme: Compile-time computation
- 42:01Why philosophy?
- 43:36A major problem
- 44:06D&E General Rules 1994 and beforelt
- 45:45D&E Design support rules
- 46:58D&E Language-technical rules
- 48:01D&E Low-level programming support rules
- 50:11So what can we do now?
- 52:12Generic Programming is "just" Programming
- 59:54Example: Use a module ITS, Microsoft is shipping beta
related talks
01h 03mUnlocking the value of C++20
55mC++ 20 Innovations: High-Performance Cross-Platform Architecture in C++
01h 30mC++ in Constrained Environments
02h 02mPeering forward: C++'s next decade
01h 38mC++20: Reaching for the Aims of C++
01h 36mPlenary: Cooperative C++ Evolution - Toward a Typescript for C++
01h 03mto pass and return, the story of functions, values and compilers
58mLeveraging C++20/23 Features for Low Level Interactions
