Blog.
Practical explanations of PFCL. The formal specifications live at /totality, /purity, and /effects-as-data; posts here explain what those specifications mean and why they are what they are.
-
31 July 2026
I built a language with zero training data and an LLM wrote it at 85% first-try accuracy
A 164-task HumanEval benchmark comparing PFCL against Python, across Claude and GPT, at several levels of context. Why a catalog you can fix beats documentation you can only hope works — and where the trick doesn't reach.
-
3 July 2026
Why every PFCL function terminates
Most languages treat termination as the programmer's problem. PFCL enforces it at load time — if the catalog loads, every composed function in it terminates. Fenced recursion, witnessed exceptions, one honest escape hatch, and verdicts a third-party consumer reproduces locally.
Read the post → · formal spec at /totality
-
8 June 2026
Why I made the module system a hash map
Functions don't live in libraries or packages. They live in a content-addressed catalog of plain YAML — identity is the SHA-256 of the typed source body, names are aliases to hashes, and there is no import, no package manager, no versioning. The reasoning behind that choice.