~/talk

Empirically Measuring, & Reducing, C++’s Accidental Complexity

Talkat CppCon 2020 · 2020-09-14..09-18· [software-architecture]
slides:none on file

Catalogs 533 language rules and finds ~360 are accidental complexity, ~150 essential, and 25 essentially unavoidable; parameter passing (≈23%) and initialization (≈7%) together account for ~30% of recorded guidance. Proposes intent-based qualifiers (in, inout, out, move, forward), provides clang/Godbolt prototypes (cppx.godbolt.org) and examples showing identical runtime code but smaller object size (four-overload assembly ~250 lines vs one function ~120 lines). Prototypes work and promise to remove boilerplate and diagnostics for definite-first/last use.

AI-written summary · about

  1. 0:00Conference opening
  2. 1:14Motivation for measuring complexity
  3. 12:09Empirical cataloging of C++ rules
  4. 29:18Proposal for simpler parameter passing
  5. 48:22Simplifying initialization and out parameters
  6. 1:05:16Q&A session
  7. 1:20:32Closing remarks
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.