diff options
| author | 2026-10-14 09:56:23 +0000 | |
|---|---|---|
| committer | 2026-10-14 09:56:23 +0000 | |
| commit | 2f52ef8662b9922cfbe970f0f01a35f83bc761d4 (patch) | |
| tree | dc1b6556ecada1319d2d85b7a9409197af15d658 /README.md | |
| parent | Merge branch 'worktree-agent-a96a10dc1489688ea' into ccr-0054c02e-dfdvnd (diff) | |
docs: add SPEC.md, the first written specification of zc
Reference for lexing, types, expressions (full precedence table),
statements, declarations, the ownership analyzer and its messages,
compile-time execution and the runtime contract, with appendices for
the zc0 subset and for doc/implementation disagreements and bugs found
while checking the rules against build/bin/zy. Pointers added to
README.md and ONBOARD.md.
Diffstat (limited to 'README.md')
| -rw-r--r-- | README.md | 2 |
1 files changed, 1 insertions, 1 deletions
@@ -2,7 +2,7 @@ a small stack cpu began as a C89 code golf entry and became a self-hosting runtime. a native core runs vm code with an arm64 jit, through llvm on supported builds, or in the interpreter. the genome contains a compiler for zc, a C-like language with forth influences. the compiler resides in vm memory alongside the program; code can call its functions, modify its tables, add syntax, and compile new code at runtime. heap objects carry an ownership tag (u, m or d) checked by a static analyzer, with deterministic frees at scope ends and a mark-sweep collector underneath. types are a compiler primitive, with structs, generics, reflection and an optional typechecker. programs can install up to 512 custom opcodes (virtual enhancements), which the jits inline as native code. code marked `o3` bypasses the stack machine: the core compiles the region as a unit and keeps its variables in registers. -this folder has the latest code. `docs/LEARN.md` is a tour of the language. `docs/history/` is the scrapbook: notes for every stage, plus frozen code from the stages that still have it, archived as `docs/history/code-snapshots.tar.gz`. +this folder has the latest code. `docs/SPEC.md` is the language reference, and `docs/LEARN.md` is a tour of the language. `docs/history/` is the scrapbook: notes for every stage, plus frozen code from the stages that still have it, archived as `docs/history/code-snapshots.tar.gz`. ## files |
