The struct/class split, written down before anything is built on it. A struct stays a fixed-layout value with C's layout, which is what keeps the FFI, SoA and wasm stories intact; a class is a separate kind with identity, metadata and an implementation-defined representation, for the long-lived gameplay objects that want to change shape while the program is running. The tagline loses "no GC" for "no mandatory GC", because a small collector confined to class instances is now an option rather than a contradiction. CLOS goes from a flat non-goal to a bounded one: the metaclasses, method combination and arbitrary change-class are out; exact-class single dispatch and an explicit frame-boundary migration are in. Migration is eager and explicit rather than CLOS's lazy-on-access, which would put a check on every slot read. Class identity is stable and layouts are numbered, the same shape as the function versions the hot reload section grew. Nothing is frozen and nothing is to be built until struct, Handle and reload semantics are working.
Description
Languages
OCaml
67.2%
Emacs Lisp
15.2%
C
10.4%
HTML
2.9%
Standard ML
2.8%
Other
1.5%