|
Download products/unlambda-seal/README.md from Snapkitty/seit: direct link, hf CLI and curl.
- Browser
- Download file 2.52 kB
-
https://huggingface.co/Snapkitty/seit/resolve/main/products/unlambda-seal/README.md
- Command line
-
hf download hf://Snapkitty/seit/products/unlambda-seal/README.md
-
curl -L -o README.md https://huggingface.co/Snapkitty/seit/resolve/main/products/unlambda-seal/README.md
2.52 kB
| # unlambda-seal — LEDGE seal ritual in Unlambda | |
| The esoteric companion to the LEDGE product: a seal ceremony written in | |
| Unlambda, executed by a small Unlambda (v2) interpreter written in C11. | |
| ## What's here | |
| | File | What | | |
| |---|---| | |
| | `unlambda.c` | Unlambda interpreter (C11, `-Wall -Wextra` clean) | | |
| | `seal.unl` | The seal ritual — prints a WORM receipt | | |
| | `cc_invoke.unl` | call/cc test: continuation invoked, print abandoned | | |
| | `echo.unl` | `@` test: echoes one input character | | |
| | `k_test.unl` | Combinator smoke test | | |
| ## The interpreter | |
| Implements the standard strict semantics: `s k i v c d1 d2 e @ | .x r`. | |
| Application is strict except through `d1`/`d2`, which build promises. | |
| Key implementation points: | |
| - **Printing is reverse-nested.** Because arguments evaluate before the | |
| function applies, `"`.o`.l`.l`.e`.H`i"` prints `Hello` — the innermost | |
| application prints first. (This bit me twice during testing; the final | |
| `i` needs no preceding backquote.) | |
| - **Characters are their own print primitive.** `` `@x `` reads a char `c` | |
| and evaluates `` `x.c `` — on EOF, `` `xv ``. So `echo.unl` ("`` `@``si`ki ``", | |
| i.e. `@` applied to `S I (K I)`) reads one char and prints it. | |
| - **call/cc is one-shot via `setjmp`/`longjmp`.** `cc_invoke.unl` | |
| (`` `c `` applied to `S (K .p) (S I (K I))`) invokes the captured | |
| continuation, abandoning a pending print — verified: the `p` never | |
| appears and the program exits 0. Invoking a continuation twice is | |
| undefined (spent `jmp_buf`); documented, not guarded. | |
| - Whitespace and `#` comments are skipped between tokens (convenience). | |
| `.` takes the literal next character, even a space. | |
| ## The seal ritual | |
| `seal.unl` prints: | |
| ``` | |
| LEDGE | |
| SEAL | |
| decision=42 | |
| ``` | |
| Honest scope: Unlambda's I/O model is print-only — there is no hashing | |
| here. This is the *ceremony* of `SIGN_BEFORE_STORE` (axiom 8): the seal | |
| as a pure, auditable ritual. The cryptographic sealing lives in the C | |
| LEDGE product (`../ledge/`); this is its esoteric shadow. | |
| ## Build & run | |
| ```sh | |
| make # builds ./unlambda, zero warnings | |
| make run # seal receipt + call/cc test + echo test | |
| ./unlambda seal.unl | |
| printf 'Q' | ./unlambda echo.unl | |
| ``` | |
| ## License | |
| SEIT Functional Source License — Donation-Gated Runtime v1.0 | |
| Copyright (C) 2026 Ahmad Ali Parr / SnapKitty Research Lab | |
| Functional, viable source: read, share, and modify freely. Running this | |
| software requires a qualifying donation to the licensor. See | |
| [LICENSE.txt](LICENSE.txt) for the full terms. No warranty. | |