Skip to main content
Version: latest

Language overview

X07 is a compiled systems language with an agent-first surface.

Compilation pipeline (high-level)

  1. *.x07.json (x07AST JSON) is validated and normalized.
  2. The compiler lowers x07AST into a small typed IR.
  3. The backend emits C.
  4. A host toolchain compiles C into a native executable (or static lib).
  5. The runner executes it in the chosen world (fixture or OS).

Modules

X07 uses explicit modules with deterministic resolution.

  • Module IDs are dot-separated: myapp.http.router
  • Filesystem layout is deterministic: myapp/http/router.x07.json
  • Imports are explicit (no ambient scanning)

Types

X07 uses a small core type system optimized for agents:

  • integers (i32, and via packages: u64, etc.)
  • bytes (owning)
  • views/slices (borrowed)
  • vectors (vec_u8, etc.)
  • options/results with stable encodings
  • interface records for dynamic dispatch in streaming I/O

See Types & memory model.

“Single canonical way”

Where many languages offer multiple competing patterns, X07 standardizes:

  • one bytes encoding per data structure,
  • one module per domain (e.g., std.net.http.spec),
  • one “do it right” function for common actions (e.g., req_get_v1 helpers).

This is about agent reliability, not minimalism.