Memory Ownership Court は、記憶の所有権を追跡するための実験的な言語です。 Rust の borrow checker を法廷の比喩で表現し、記憶が誰に属し、いつ借用され、いつ証拠として移動したかを可視化します。 そして、すでに法廷へ移った記憶を証人がもう一度「自分のもの」として語ろうとした瞬間、ゴリラが胸を叩きます。これは所有権違反の合図です、ウホ。
この言語にあるのは三つだけ。所有(own)、借用(borrow)、移動(move)。 記憶は必ず誰か一人に属し、その帰属だけを追い続けます。証拠として切り離された記憶を、元の持ち主がもう一度「自分の記憶」として語ろうとすると、use-after-move、つまり E0382 になります。
証人が現場を見た瞬間、その記憶を所有する。最初の持ち主は変わらない。
証言は read-only の借用。読むだけで記憶は書き換えない。済んだら返す。
帰属が法廷へ移る。一度きり。凍った証拠はもう歪められない。
| Rust | この世界では |
|---|---|
| own | 証人が出来事を目撃し、記憶を所有する |
| &borrow | 法廷が証言を read-borrow する(読むだけ) |
| move | 法廷が記憶を証拠として引き剝がす |
| use after move (E0382) | 証人が、証拠化された記憶をもう一度 raw に想起する |
| cannot move while borrowed | 借用中の記憶は証拠にできない(先に返す) |
記憶は最初から完全ではありません。この世界では、記憶は五つの状態のどれかを持っています。 どの状態でも証拠化できますが、帰属移動レポートは「どんな歪みを抱えたまま動いたか」を短く添えます。
v0.2では、デモ用の違反再現と実際の分析を明確に分離しました。 通常の from-trial は違反を注入せず、裁判ログから所有権イベントだけを生成して最後まで走ります。
# コンセプトデモ(わざと違反を見せる) python3 uho_court.py demo # 通常分析:裁判ログから所有権イベントを生成して完走(違反なし) python3 uho_court.py from-trial trial_sample.json --html timeline.html # デモとして use-after-move を注入したいときだけ python3 uho_court.py from-trial trial_sample.json --inject-error # 手書きの記憶DSLを走らせる python3 uho_court.py run case_demo.memuho --html out.html
--html を足すと、想起エンジン風のタイムライン HTML(台帳+帰属移動レポート付き)を書き出します。
ブラウザですぐ試したいなら Playground へ、ウホ。記憶は倉庫に積まれた所有物ではなく、身体と制度を通り抜けて森(社会)へ還っていくもの。 法廷は常設の舞台ではなく、開廷ごとに建てて閉廷で畳む一時的な 巣(nest)。 残るのは巣ではなく、記録・判例・噂・神話として撒かれた種です。
※ forage / chew / digest … は v0.3 の概念語で、現行エンジンの実行語彙ではありません。 パーサ・SYMBOL・from-trial・run の挙動は v0.2 のまま。実装したのは movement_report 末尾の「森へ還る」一行だけ、ウホ。
Memory Ownership Court が追うのは判決ではなく、記憶の移動です。
この言語が観測するのは、その流れだけです。borrow は Rust の所有権モデルを参考にした比喩であり、静的ライフタイム検査そのものではありません。