snapkitty
october-2026-drop
c
haskell
unlambda
research
community
seit / products /unlambda-seal /README.md
SNAPKITTYWEST's picture
October 2026 main drop: mirror from GitHub
d36206f verified
|
Raw History Blame Contribute Delete
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.Hi" 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 (" `@siki ``", i.e. @applied toS 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

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 for the full terms. No warranty.