Philosophy and Design Principles
Agent-First, Human-Second
VERA inverts the traditional programming model. In the conventional compile chain:
Human writes → High-level language → Compiler IR → Assembly → Machine code
With agents in the picture, the human-readable source language becomes the bottleneck rather than the enabler. VERA replaces this with:
Agent writes → VERA Text → Machine code
↓
Human reads ← VERA Explain
The agent is the primary author. The human is a reviewer. The agent generates VERA text — a precise, unambiguous, assembly-like format. When a human needs to review the code, vera explain generates a natural English description.
Intent-Based Instructions
VERA instructions express what should happen, not how or where. There are no explicit registers, no calling convention details, no instruction encoding concerns. The compiler decides all physical resource allocation. VERA describes the computation; the compiler maps it to hardware.
Two Representations
| Form | Purpose | Producer | Consumer |
|---|---|---|---|
| VERA Text | Canonical source | Agent (LLM) | Compiler |
| VERA Explain | Human review | vera explain | Human operator |
Not a Programming Language
VERA is deliberately not a programming language. It is an assembly-level representation with:
- No structured control flow — no
if/else/while/forblocks. Only jumps and labels. - No expressions —
add.i64 result, a, bnotresult = a + b. - No implicit behavior — every operation is an explicit instruction.
- No scope — named slots are flat within a function, labels are flat within a function.
- Linear execution — the instruction pointer moves forward unless a jump says otherwise.
Positioning
VERA occupies a specific niche between existing representations:
- More abstract than native assembly — no registers, no platform specifics, portable.
- Lower level than WebAssembly — no structured control flow requirement, no validation stack, flat memory.
- Simpler than LLVM IR — no SSA form, no phi nodes, no undefined behavior semantics, no poison values.
- More LLM-friendly than all of the above — full English words, explicit types everywhere, no implicit state.