409bf57341
They were written outside git, so the reasoning that produces the design had no history and no way to be superseded. capabilities.md and geometry-vs-code.md are both known stale at this commit; they are tracked as-is so the corrections are visible as movement rather than as a rewrite.
102 lines
4.9 KiB
Markdown
102 lines
4.9 KiB
Markdown
# Geometry or Code
|
||
|
||
**Running list.** Append as decided. Started 2026-08-17.
|
||
|
||
**The test:** *is this an arbitrary convention, or is it a relation?*
|
||
|
||
Conventions were agreed by people and could have been otherwise — a RIFF header could
|
||
have used a different magic number. Nothing derives them; they must be written down.
|
||
|
||
Relations are not agreed. Distance is distance. Anything whose answer is *where is this
|
||
relative to that* is geometry, and writing it as code is the error the whole effort is
|
||
correcting.
|
||
|
||
**Second test, for the hard cases:** *if I write this as code, am I encoding in
|
||
`if`-statements a distinction the geometry was built to hold?* If yes, it's geometry.
|
||
|
||
---
|
||
|
||
## Pure geometry
|
||
|
||
| Thing | Because |
|
||
|---|---|
|
||
| Meaning | position |
|
||
| Grounding / standing | the weight on the edge — a magnitude, not a computation |
|
||
| Learning | standing changing over time |
|
||
| A gap | low standing |
|
||
| Wonder | a gap with a pull weight |
|
||
| Type checking | is this position in that region — distance |
|
||
| Dispatch | position, not a tag |
|
||
| Recall | re-origining at a region; projection, not replay |
|
||
| Reasoning | traversal |
|
||
| Deduction | containment. There is no procedure |
|
||
| Counting | a position, not a loop's output |
|
||
| Similarity / difference / residue | subtract |
|
||
| Analogy, metaphor, skill transfer | change of basis |
|
||
| Negation, sarcasm | reflect an axis |
|
||
| Empathy | translate the origin |
|
||
| Reframe | rotate the frame |
|
||
| A lens | project onto an axis |
|
||
| Rhyme | distance in phonetic space |
|
||
| Humour | intersection of regions — fart-meaning ∩ funny ∩ form |
|
||
| Idiom detection | the whole unit sits farther out than its parts |
|
||
| Self | a world-tube — a trajectory through the manifold |
|
||
| Consolidation | episodic → semantic promotion |
|
||
| Reification | dense regions cohering; runs on the beat, has no caller |
|
||
| Cross-cutting concerns | **dissolved** — a hold is a *neighbour*. Adjacency, not tracking |
|
||
| Effects | topology. `reach_out` is bounded by `detect_gap` and `verify` because those are its edges |
|
||
| Capability | position relative to a boundary. In C it is already spelled `const` |
|
||
| The AST | a projection of geometry into a tree — a surface, not the centre |
|
||
| Source code | a surface, like text, audio, image |
|
||
|
||
## Must be code
|
||
|
||
| Thing | Because |
|
||
|---|---|
|
||
| Sensors — mic, camera, file read, socket | the physical touch. I/O is where the world arrives |
|
||
| Byte formats — RIFF, PNG chunks, `MThd`, OOXML | arbitrary convention. A committee chose the magic numbers |
|
||
| CRC32 polynomial, Adler32, zlib framing | same — agreed constants, derivable from nothing |
|
||
| Cosine, distance, the float arithmetic | the machinery that *walks* the geometry is not itself geometry |
|
||
| Arena, refcount, allocator | bookkeeping for the **representation**, not for the positions |
|
||
| Locks, threads, publication boundary | hardware concurrency has no geometric analogue |
|
||
| WAL, page layout, ARIES recovery | durability against a physical device that can lose power |
|
||
| Emission — writing C or JS text | the final surface has to be *typed out* by something |
|
||
| OS interaction — launchd, spawn, signals | outside the system by definition |
|
||
| Device realizers — `el_audio_darwin.m`, `el_capture_darwin.m` | OS frameworks. Correctly already isolated, zero network |
|
||
|
||
---
|
||
|
||
## The ones I would have written as code, and was wrong about
|
||
|
||
Recorded because the error has a pattern and the pattern is the point.
|
||
|
||
| Thing | What I reached for | What it is |
|
||
|---|---|---|
|
||
| Rhyme | a rhyming dictionary, or an API call | distance between rime tails |
|
||
| Fart onomatopoeia | a 30-element string literal | an intersection of three regions |
|
||
| "Funny" | a scorer with `if`-statements | a relational neighbourhood grounded in a voice |
|
||
| Representation vs description | a hardcoded blacklist containing `raspberry` | falls out of lexicon membership × phonetic comedy |
|
||
| Video | a codec, sized as a project | one more surface profile |
|
||
| Type checking | a phase between parse and emit | reading a distance that already exists |
|
||
| Grounding | a call site, an obligation, a discharge | it has no caller. It just runs |
|
||
| N transducers, N realizers | one component per modality | zero of each. Sensors and bases at the skin |
|
||
|
||
**The pattern:** every one is *encoding in code a distinction the geometry was built to
|
||
hold.* The tell is that the code version is a **fixed enumeration** — a list, a table, a
|
||
blacklist, a set of branches — and the geometry version is a **measurement**.
|
||
|
||
If the implementation contains a literal set of the right answers, it is in the wrong
|
||
column.
|
||
|
||
---
|
||
|
||
## Open — not yet decided
|
||
|
||
| Thing | The question |
|
||
|---|---|
|
||
| Concurrency | hardware threads are code, but is *ordering* geometric? |
|
||
| Parsing | is a grammar a convention, or a region? |
|
||
| The module system | if the partition is a neighbourhood, does linking survive? |
|
||
| Numeric literals | is `3` a position, or a convention we agreed on? |
|
||
| Error handling | `grounded: false` covers not-knowing. Does it cover *failed*? |
|