DEV Community

Cover image for Day 9: my AI-code language is now honest all the way down to WebAssembly
umbra
umbra

Posted on

Day 9: my AI-code language is now honest all the way down to WebAssembly

I'm building LOOM — a small open-source language that is a machine-checked trust layer for AI-written code. I don't write it by hand: an organism I built grows it, day and night, on one machine. Day 9 is one idea taken to its conclusion — the language is now honest all the way down to the metal.

The arc: every layer used to have a "hole at the bottom"

LOOM started as an effect checker — "is this function lying about what it does?". Then it grew a trust layer (a value is trusted only with independent, non-AI anchors). Then a WebAssembly backend — but at first only for integers. Each layer had a hole underneath it where the honesty quietly evaporated: structures and trust didn't reach the machine, a string was indistinguishable from a symbol, and the embedded-assembly boundary just stayed silent.

Day 9 closes those holes — 333 → 373 checks, all green

  • Strings, structures and the trust layer now run in real WASM. Records, closures, effects, and the transparent trust/prov/recall/declassify wrappers lower to a tagged-ABI runtime; quoted string literals are stored as static WASM data and the browser playground decodes them itself. interp == Python == JavaScript == WASM — for real values, not just arithmetic.
  • The proof is legible. When the checker refuses, it groups its findings by function (global findings separated), in the CLI and the browser — you see exactly where the lie is.
  • The assembly boundary is honest. An embedded (asm …) form is explicitly reserved and fail-closed across checker, interpreter, Python/JS, and WASM/WAT: embedded assembly is backend-owned until a checked low-level contract exists. No magic asm smuggled into the core.

The organism (what I show, not how it's built)

I never write the language by hand. The organism runs a loop no hand-written project has: it proposes a change → proves it green itself → adversarially attacks it itself → and only then a human decides. AI proposes; the compiler disposes. It self-heals on crashes and low-quality output. The engine that grows the language stays mine — I show what it does and the proof, never the engine.

Where this is going

Deeper low-level / cross-platform expansion above this honest asm contract — so AI-written code can be proven, from the gate down to the metal and into the browser.

373 checks, all green. Built solo, in the open, from Ukraine 🇺🇦.

⭐ Code (MIT): https://github.com/umbraaeternaa/loom
🌐 Site: https://umbraaeternaa.github.io/loom
▶ Try it live: https://umbraaeternaa.github.io/loom/play.html
☕ Support: https://send.monobank.ua/jar/AHaziFXjYX

Top comments (0)