Concepts
This guide explains the terms used across the 0x0 documentation.
Source-Owned Compiler
The compiler implementation lives in .0x0 source, primarily
compiler/main.0x0. Host languages may adapt to the operating system, but they
must not own production language semantics.
Invariant: language behavior belongs in 0x0 source or checked policy data, not in
unchecked Python or shell helpers.
Seed
seed/zero.s is the stage -1 recovery seed. It can parse and evaluate enough
source and OISA to reproduce the trusted compiler chain. It is deliberately
small and is not the normal implementation home for language features.
Precondition for seed use: you are auditing or recreating the trusted root.
Normal make does not use the seed path.
OISA
OISA is the compiler output used by the self-hosting chain. The self-host gate
checks that compiling the compiler reaches a fixed point:
compiler/main.0x0 -> stage2.oisa -> stage3.oisa
Postcondition for the self-host gate: stage2.oisa and stage3.oisa are
identical.
Source Forms
0x0 source uses parenthesized symbolic forms:
(⊙ name): module declaration;(↥ "path.0x0"): import;(↦ exported-name): export list;(ƒ name ...): function declaration;(∷ (→ Arg... Result)): type annotation;(doc "..."): documentation annotation;(cap pure): capability annotation;(τ Type ...): algebraic data type declaration.
See Language Guide and Syntax for exact grammar and
current restrictions.
Capabilities And Effects
Capabilities document and check whether source can perform host effects. Current
source capabilities include pure, io, file, network, process, crypto,
and hardware in the relevant checker/runtime surfaces. The beginner rule is:
pure source cannot call host effects.
Host operations are listed in runtime/host-abi.tsv and described in
Runtime Production Capabilities.
Packages
The root package manifest is 0x0.pkg. The generated lockfile is 0x0.lock.
Package imports use:
(↥ "pkg:core-option")
The compiler resolves the package name through the lockfile to a local source
path. See Packages, Package System, and
Source-Owned Tooling
Production-critical tools are expected to route policy through .0x0 source.
Shell and Python adapters may perform explicit host effects such as filesystem
access, process spawning, and JSON/TSV marshaling.
See Source-Owned Tooling.
Scripting And REPL
0x0 remains a compiled language. The scripting profile adds eval, script file
execution, and REPL workflows for source-owned tooling and local inspection.
Scripting still uses the parser, capability model, stable diagnostics, and host
ABI boundary.
See Scripting And REPL.
Evidence Gates
0x0 uses Make targets and checked TSV/JSON evidence to keep claims tied to
implementation. Examples:
make docs-check;make editor-check;make scripting-production-closure-check;make source-owned-tooling-closure-check;make selfhost-guard.
When a doc makes a production claim, it should name the source file or evidence
gate that proves it.