Who holds this memory right now? Borrow it, distort it, rip it out as evidence โ and the moment a witness recalls what the court already took as their own memory, the gorilla pounds its chest. It's Rust's borrow checker, retold as a courtroom, OOK.
Own, borrow, move โ just three motions. Ripping a testimony out as evidence is a move, and once a memory has moved, the owner recalling it again is use-after-move: error E0382.
The moment a witness sees the scene, they own that memory. The first owner never changes.
Testimony is a read-only borrow: only read, never rewritten. Return it when done.
Attribution moves to the court. Once only. Frozen evidence can no longer be distorted.
| Rust | here |
|---|---|
| own | a witness observes the event and owns the memory |
| &borrow | the court read-borrows the testimony (read only) |
| move | the court rips the memory out as evidence |
| use after move (E0382) | a witness recalls an evidenced memory as a raw memory |
| cannot move while borrowed | a borrowed memory can't become evidence (return it first) |
A memory carries its distortion as a state that existed before the borrow. Any of them can become evidence, and the attribution-movement report adds one line on the risk it carried as it moved.
The heart of v0.2 is keeping "demo injection" cleanly apart from "real analysis". A normal from-trial injects no violation โ it only generates ownership events and runs to completion.
# concept demo (shows a violation on purpose) python3 uho_court.py demo # normal analysis: ownership events from the trial log, runs to completion (no violation) python3 uho_court.py from-trial trial_sample.json --html timeline.html # only when you want to inject a use-after-move for a demo python3 uho_court.py from-trial trial_sample.json --inject-error # run a hand-written memory DSL python3 uho_court.py run case_demo.memuho --html out.html
--html writes a recall-engine-style timeline (with the ledger and the
attribution-movement report). To try it right in the browser, head to the Playground, OOK.A memory is not a possession stacked in a warehouse; it passes through a body and an institution and returns to the forest (society). The court is not a permanent stage but a temporary nest โ built, used, and discarded once court closes. What remains is not the nest but the seeds scattered as records, precedents, rumors, and myths.
Note: forage / chew / digest โฆ are v0.3 concept vocabulary, not the engine's execution vocabulary. The parser, SYMBOL, from-trial, and run behaviors stay as in v0.2. The only thing shipped is one "return to the forest" line at the end of movement_report, OOK.
The demo, the trial sample, a double move, evidencing while borrowed โ try them all inside the browser, OOK.
โถ Open the Playground