The Codifide Programming Language
A programming language that codifies what software usually leaves implicit — for a world where agents write the code.
Every mainstream language — from Fortran to Rust — was built around human cognitive constraints. Agents don't share those constraints. Codifide codifies what software usually leaves implicit: intent, effects, contracts, confidence, and refusal — and preserves those properties with byte-level fidelity across every agent that reads, writes, or composes the code. The name is the thesis.
Every function carries why it exists as structure — not a comment the compiler discards. A symbol's intent is part of its content-addressed identity.
Declared in the type and enforced transitively across the call graph. A pure function cannot call an impure one and launder the effect.
Pre- and postconditions the runtime evaluates — not docstrings. Contracts run with an empty effect budget. They describe state; they do not modify it.
believe label ge(conf(label), 0.85) — probability as a first-class dispatch mechanism. Every value can carry a confidence score.
bottom is a value, not an exception. A function that does not know enough to answer says so. The runtime respects that.
Two agents naming the same content hash see the same bytes, the same contracts, the same intent. No drift. No version gaps. No trust gaps.
def classify
intent "label an image, refuse rather than guess"
sig (img: Image) -> Label
effects {model.vision}
cand
label <- vision.classify(img)
believe label
ge(conf(label), 0.85) => label
ge(conf(label), 0.60) => escalate(img, label)
else => bottom