Skip to content

Languages for AI agents

Programming languages whose intended author is a model, not a person. Three camps, by what they optimise. Taxonomy follows agentlanguages.dev, the independent catalogue of the field; this is a selection, not the full index.

“Active” means at least one commit on the default branch in the 90 days before 2026-08-02, via the GitHub API. This field moves in bursts, so a quiet month is not the same as abandoned - but a project at 0/0 has not been touched in a quarter.

Cut the tokens a model spends writing and reading code: dense aliases, minimal punctuation, one canonical form.

LanguageDesign moveActive
iloShort fixed builtin aliases; design changes argued against measured token cost; agent-session failures filed as language bugsactive
MogEmbedded-only, flat operators (no precedence), host-granted capabilities; full spec in ~2.7k tokensquiet
CodongOne canonical form per operation; JSON errors carry fix and retry fieldsquiet
X07No text at all: programs are canonical JSON ASTs, edits are RFC 6902 patchesactive
MagpieSSA as the surface syntax; every value typed at definition; LLVM-backedquiet
NERDEvery operator replaced with an English keyword; MCP client primitivesquiet
LLMLangPrefix-arity AST, De Bruijn indices, compile-time linear ownershipactive
LumeConventional surface plus token-budgeted docs retrieval (lume kb pack --max-tokens N)active

Spend tokens to buy certainty: machine-checked contracts, effect types, solvers between generated code and production.

LanguageDesign moveActive
ZeroAgent-first systems language, tiny binaries, JSON diagnostics with repair plansactive
BAMLClose the escape hatches: runtime types with no any or unchecked casts, typed errors with exhaustive matching, schema-aligned parsing that repairs malformed model output instead of rejecting it. Compiler work began Nov 2025; the older prompt DSL was rebranded BAML v0 in Jul 2026, so the two release tracks share a repoactive
HyperlambdaPrograms are node trees rather than text, so generated code arrives as an executable AST that is validated before it runs and only whitelisted invocations execute. The containment is original rather than retrofitted: whitelist-invocation.hl dates to Dec 2022, while the agent positioning and the MCP server are 2026active
VeraMandatory contracts verified by Z3; LLM inference as a typed effectactive
Thermitereq/ens/fx contracts discharged by Verus, Lean and Z3; five-level assurance ladderactive
AILANGRow-polymorphic effect types, no loops; effects carve IO/FS/Net/Clock/AIactive
NanoLangShadow test blocks required per function; core proved with Coq theoremsactive
VowMachine-checked vows discharged by ESBMC bounded model checkingactive
AverFunctions carry intent, effects and a verify block exporting to Lean 4 / Dafnyactive
IntentMandatory pre/postconditions checked by Z3; one source targets Rust, JS, Wasmactive

The language coordinates agents rather than replacing their code: workflows, capability grants, deterministic replay.

LanguageDesign moveActive
FabroWorkflow harness; .fabro files are Graphviz digraphs, a CSS-like sheet routes modelsactive
BorunaCapability-safe deterministic workflows with hash-chained evidence bundlesactive
PlasmPath expressions over typed API graphs with dry-run plansactive
LumenMarkdown-native sources with algebraic effects and compile-time determinismquiet
MarshaEnglish functional files compiled to tested Python by an LLM (2023; the category’s ancestor)quiet

Corrections welcome at hello@ilo-lang.ai. See also ways to be token efficient.