Menu

Chapter 14 — Epilogue: Tyu's Effect on Thinking

Epilogue: Tyu's effect on thinking.

Typechapter

The Vigilance Trap is closed. Not because everyone stopped being careful — because being careful stopped being the mechanism.

— workshop wall

Chapter 1 opened with two ways to be careful, and promised the second. Look back at what “moving the promise into the program” turned out to mean, claim by claim:

The claimThe checkWhere it was earned
“my stack ends where I say”the stack-effect checkerch. 2
“my values stay in their ranges”subtypes, trap 21ch. 3
“this is true whenever the word runs”contracts, trap 20ch. 4
“I only do what I declared”the effect matrixch. 5
“my stack never rises past its shape”the (net, high) monoidch. 6
“one writer, or many readers; custody moves”the borrow ledgerch. 7
“the hardware is what the descriptor says”MMIO checkingch. 8
“this word is one sentence”factoring, made mechanicalch. 9
“the interface is the whole truth”the .def mirrorch. 10
“the handler and mainline cannot race”the cross-context rulech. 11
“the scheduler holds what I handed it”effects + annotationsch. 12
“this module may run here”the loader’s gatesch. 13

Twelve claims. None of them is a comment. The daring they licensed — an interrupt sharing a device, signed code arriving from untrusted media — was not made safe by a framework or a review process. It was made safe because each claim got small enough to check, and then the checks got composed.

Three habits are the book, compressed:

Say the claim where the machine reads it. The range in a subtype, the promise in a needs clause, the effect in performs, the device in the descriptor. If a fact is load-bearing, it is not a comment.

Factor until the proofs are reusable. The word you name once is the word whose shape, contract, and bounds are proven at every call site, forever, for free.

Know the edge of every proof. The data stack is proven; the native stack is not (yet). The ISR budget is checked; the end-to-end interrupt demo is the open edge. A guarantee that states its boundary is worth a dozen that pretend to be total — and the boundary is where the roadmap lives: static discharge of contracts, the prover that eats the same predicates the runtime runs, the native-stack analysis, enum conversions, constant folding. The habits this book drilled are precisely the diet those tools will want.

Forth taught that programs are built from words. Ada taught that promises can be checked. This book’s bet is that the two belong together: a language small enough to hold in your head, with a checker strict enough that what you hold is the truth. The rigor was never the brake.

It was the engine.

— end —