The 10 Essential Features for the Future of C++ Libraries
summary
Claims ten essential (actually sixteen) missing language/library features and demonstrates them with a quantities-and-units library that exposes real issues: template-parameter kinds and universal/template/value NTP extensions enable readable unit syntax like km_per_h, but current structural NTP rules force public members and break encapsulation; ADL ignores non-type template arguments so quantity/units examples show ADL breaks requiring using declarations; C++26 accepts concept-template parameters and user static-assert messages; proposes compile-time emit/throw diagnostics, canonicalized type ordering, text parsing (scanlib) and CPS packaging to fix real pain points.
AI-written summary · about
chapters (13)
- 0:00Future C++ library features
- 5:04Stronger typing for interfaces
- 11:44Non-type template parameters
- 19:13Advanced template parameters
- 29:50ADL limitations and fixes
- 37:12Canonicalizing types
- 41:09ADL-friendly math functions
- 44:22Compile-time debugging
- 50:00Better compile-time errors
- 1:01:25Value-preserving conversions
- 1:04:38Text parsing and Unicode
- 1:07:04Library distribution with CPS
- 1:11:41Summary and contributions
related talks
01h 32mThe 10 Essential Features for the Future of C++ Libraries
01h 29mWhat Does It Take to Implement the C++ Standard Library?
01h 01mThe Best Parts of C++
01h 23mThe Power of C++ Templates With mp-units: Lessons Learned & a New Library Design
01h 30mEnhancing Safety in C++ Code With Modern C++ Quantities and Units Library
59mC++17 in Breadth (part 1 of 2)
01h 03mC++17 part 2: The Library Features
01h 31mImplementing Physical Units Library for C++
