velme-lang/velme

Intent-driven language: an LLM proposes typed IR, a deterministic validator and sandbox decide

Rust

0

33 commits

updated Sep 29, 2026

See the code

See what people are saying

SourceMessageScoreDate

4 compiler phases in 5 days with Claude Code: the main session never writes code, and a separate reviewer caught every bug that passed tests. ~460M tokens. (r/ClaudeAI)

I'm building a programming language in Rust with Claude Code. In 5 days: 4 phases, \~21.6k lines of Rust, 236 acceptance criteria tracked to tests. My first attempt ran everything in one long session. It hit context limits and the code got worse after each `/compact`. What fixed it: **the main…

0

Sep 29, 2026

README

Velme

Velme™ (Latvian vēlme, "wish") is an intent-driven programming language — kids first, professional by design. You declare typed goals, describe what each should do in plain language, and state checks the result must pass. An LLM proposes an implementation as typed Velme IR; a deterministic compiler, validator and sandboxed runtime decide whether it is accepted and run it.

goal Add(a: Number, b: Number) -> Number:
    plan: "Add a and b."

    check:
        - result == a + b

Why not just ask an AI to write the code?

You can, and for many jobs you should. Velme is for when you want the AI's help but not its judgement: you decide what the program does, and a deterministic compiler decides whether the AI got it right.

AI writes the codeVelme
What you keep and reviewcode you didn't write, every line of itthe goal: its purpose, its calls and its examples
Who decides it workstests, often written by the same AIyour checks and examples, run by the runtime, never by an LLM (INV-2)
What the AI output can doanything the language can: files, network, endless loopsonly typed IR that passes the validator (INV-1), in a sandbox with no files, network or clock (INV-4) and fixed budgets (INV-5)
Program structurewhatever the AI chosefixed by your call blocks; the AI fills in single goals and can't add calls (INV-6)
Running it againnew chat, possibly different codesame source, inputs and lockfile give the same result, offline (INV-3, INV-7); an unchanged goal is never re-synthesized (AC-RDM-08)
When it failsread the code to find out whythe failed example or check, with the values, names the goal that is wrong (AC-RDM-06)

For learners this moves the effort to the parts of programming that stay a person's job: breaking a problem into goals, saying precisely what each one should do, and giving examples that prove it.

It is not the right tool for everything. v0.1 goals can't read files, use the network, loop or recurse in source (delivery/50), and a one-line rule is no shorter as a plan plus examples than as code plus a test. Velme saves the most on goals that are quick to describe but long to implement.

Status: specification complete for v0.1; syntax and semantics (M1–M2) are done, so velme check reports syntax, name, type and call-graph errors. Compiling and running (M3) is next; nothing runs yet. To hear when it does, watch this repo (Watch → Custom → Releases); progress notes are posted in Discussions → Announcements.

Contributing

See CONTRIBUTING.md.

Build

cargo xtask verify            # the full quality gate
cargo run -p velme-cli -- --version

License

Code is MIT OR Apache-2.0 (LICENSE-MIT, LICENSE-APACHE); the spec and docs are CC BY 4.0 (LICENSE-CC-BY). The name and logo are trademarks and not licensed by these.

llm
programming-language
rust
sandbox
wasm

velme-lang/velme

Intent-driven language: an LLM proposes typed IR, a deterministic validator and sandbox decide

Rust

0

33 commits

updated Sep 29, 2026

See the code

See what people are saying

SourceMessageScoreDate

4 compiler phases in 5 days with Claude Code: the main session never writes code, and a separate reviewer caught every bug that passed tests. ~460M tokens. (r/ClaudeAI)

I'm building a programming language in Rust with Claude Code. In 5 days: 4 phases, \~21.6k lines of Rust, 236 acceptance criteria tracked to tests. My first attempt ran everything in one long session. It hit context limits and the code got worse after each `/compact`. What fixed it: **the main…

0

Sep 29, 2026

README

Velme

Velme™ (Latvian vēlme, "wish") is an intent-driven programming language — kids first, professional by design. You declare typed goals, describe what each should do in plain language, and state checks the result must pass. An LLM proposes an implementation as typed Velme IR; a deterministic compiler, validator and sandboxed runtime decide whether it is accepted and run it.

goal Add(a: Number, b: Number) -> Number:
    plan: "Add a and b."

    check:
        - result == a + b

Why not just ask an AI to write the code?

You can, and for many jobs you should. Velme is for when you want the AI's help but not its judgement: you decide what the program does, and a deterministic compiler decides whether the AI got it right.

AI writes the codeVelme
What you keep and reviewcode you didn't write, every line of itthe goal: its purpose, its calls and its examples
Who decides it workstests, often written by the same AIyour checks and examples, run by the runtime, never by an LLM (INV-2)
What the AI output can doanything the language can: files, network, endless loopsonly typed IR that passes the validator (INV-1), in a sandbox with no files, network or clock (INV-4) and fixed budgets (INV-5)
Program structurewhatever the AI chosefixed by your call blocks; the AI fills in single goals and can't add calls (INV-6)
Running it againnew chat, possibly different codesame source, inputs and lockfile give the same result, offline (INV-3, INV-7); an unchanged goal is never re-synthesized (AC-RDM-08)
When it failsread the code to find out whythe failed example or check, with the values, names the goal that is wrong (AC-RDM-06)

For learners this moves the effort to the parts of programming that stay a person's job: breaking a problem into goals, saying precisely what each one should do, and giving examples that prove it.

It is not the right tool for everything. v0.1 goals can't read files, use the network, loop or recurse in source (delivery/50), and a one-line rule is no shorter as a plan plus examples than as code plus a test. Velme saves the most on goals that are quick to describe but long to implement.

Status: specification complete for v0.1; syntax and semantics (M1–M2) are done, so velme check reports syntax, name, type and call-graph errors. Compiling and running (M3) is next; nothing runs yet. To hear when it does, watch this repo (Watch → Custom → Releases); progress notes are posted in Discussions → Announcements.

Contributing

See CONTRIBUTING.md.

Build

cargo xtask verify            # the full quality gate
cargo run -p velme-cli -- --version

License

Code is MIT OR Apache-2.0 (LICENSE-MIT, LICENSE-APACHE); the spec and docs are CC BY 4.0 (LICENSE-CC-BY). The name and logo are trademarks and not licensed by these.

llm
programming-language
rust
sandbox
wasm

Languages

Rust

100.0%