A Codex of Programming Ideas · 1967 → 2026

The Lineage of C++

Three opposed answers to a single question — what is a program? — fused into one language by a wager that abstraction could be made to cost nothing. Trace the descent, edit the evidence.


I · The convergence

Three roots, one spine

Tap any milestone to load its evidence into the studio below.

Simula 67 world-model C · 1972 the machine Algebra generic C w/ Classes Cfront · '79 '98STL '11modern '17 '23 '26reflection '29safety
Simula — program as a model of the world C — program as a description of the machine Algebra — program as generic structure

II · The studio

Edit the evidence

Each phase carries a live, editable specimen. Type into it. The C with Classes specimen also reveals what Cfront actually emitted — plain C.

⚠ Horizon material — not yet standardized. Syntax shown is directional, drawn from active proposals, and will change.
specimen.cpp
cfront_output.c  — what the 1983 compiler actually generated

Names are mangled to encode their class and argument types; the implicit object becomes an explicit this pointer. The class vanishes — abstraction compiled down to mechanism. That disappearance is the zero-overhead principle.

III · The distillation

Core values, after fifty-six years

Not the best language on any single axis — the most complete expression of one idea: the gap between how humans want to think and how machines must run can be closed at compile time, and at no cost.

Zero overheadAbstraction must be free at runtime. What you don't use costs nothing; what you use, you couldn't hand-code better.
Trust the programmerInherited from C — and the one axiom the 2026 safety era is now renegotiating.
MultiparadigmProcedural, object, generic, functional coexist. No single style is mandated.
Deterministic resourcesRAII, not garbage collection. Lifetimes are scoped, freeing is exact, the cost is visible.
Compile-time powerGenerality via templates → concepts → reflection. The work happens before the machine ever runs.
Never break the pastBackward compatibility as a survival trait — and, per Brooks, the source of its accidental complexity.