Spreadsheet
A working spreadsheet, wired from small pieces.
The wiring ∘ feeds ⊗ parallel
This is the compiler’s reading of how the gifts compose into one app. Read left to right: each stage feeds the next (∘). A bracketed group (⊗) is parallel — its parts don’t depend on each other.
grid model- ∘
render grid
Composition term: render-grid ∘ grid-model
3 declared gaps — named below, not hidden.
constructible-with-gaps: 2 pipe primitives fully witnessed (grid-source, grid-sink); 3 declared pure-kernel gaps (formula-parse, dep-graph, recalc) — the spreadsheet compute core is honest derive-first work. One interactive sub-lane (edit-cell / input-handling).
The declared gaps 3
A gap is a piece the compiler knows it needs but doesn’t yet have a witnessed gift for — honest derive-first work, declared rather than hidden. The app is constructible; these are the parts you’d build.
-
ss.formula-parsepure-kerneltext -> formula AST: a deterministic parse, a pure fold. Reclassified pipe->pure-kernel by the S13.1752 D1 ruling (drift 8251ecec). Declared derive-first gap; a formula-parser witness gift (path b) is open gifts-8-reference-apps work.
-
ss.dep-graphpure-kernelcells -> dependency DAG: a deterministic fold. Declared derive-first gap (oracle pure-kernel, null-witness).
-
ss.recalcpure-kerneldep-graph + values -> recomputed values: a deterministic topological fold. Declared derive-first gap (oracle pure-kernel, null-witness).
Witness gifts 2
These shipped gifts witness stages of the pipeline — the real, downloadable parts the proof stands on.
The gifts are real and free; the wiring is a plan. Take the parts and build the app — as the schematic reads it, a variation, or something we’d never have compiled.
Built it, found a gap we missed, or think the wiring is wrong? Shea wants to hear it — success stories, questions, and corrections all land in the same inbox: