Prismio 0.1.0
The current self-hosted compiler baseline, including implemented language, AIF, LLVM, UMS, runtime, tooling, and benchmark behavior.
Last verified
Prismio 0.1.0 is an active-development baseline rather than a stability promise. The compiler front end, semantic analysis, AIF, and LLVM generator are written in Prismio and rebuilt through a committed seed plus named compiler generations.
Compiler and tooling
- Lexer, parser with selected recovery, AST, imports, visibility, semantic checking, ownership, allocation inference, LLVM 22 generation, object emission, and native linking.
init,build,run,test,clean,check, bootstrap, runtime hashing, AST dumps, AIF reports, and project commands.- JSON Lines diagnostics for analysis-only editor integration.
- DWARF line, function, scope, local, and aggregate information under
-g. - UMS manifests, workspaces and targets, local dependencies, lock information, native link inputs, project-local compiler routing, and staged promotion.
Language and memory
- Explicit scalar types and casts, arrays, strings, lists, maps, structs, payload enums, optionals,
Option,Result, matching, and iteration. - Generics and monomorphization, inherent implementations, traits, multiple bounds, supertraits,
default methods, associated constants and types, trait objects, and
impl Trait. - Closures with by-value captures, native tasks, task results, and typed blocking channels.
- Move-only managed values, default borrowed parameters,
sink,inout, explicit drop, slices, DataView, inline eligible list elements, and unique-update reuse. - AIF tiers, regions, layout selection, explanations, manifests, oracle differential, and runtime verification. AIF policy remains experimental.
Runtime and standard modules
The toolchain ships importable modules for I/O, strings, files, processes, lists, maps, options and results, key and ordering bounds, copying, equality, display, and iteration. The runtime supplies native memory, task, channel, process, file, and compiler-support operations.
Performance evidence
The maintained catalog contains 73 workloads. Fifty-seven have equivalent Prismio, C++, and Rust arms; sixteen remain unsupported because the ordinary Prismio capability does not exist. Result artifacts contain exact build commands, checksums, samples, and medians. Individual wins and losses are workload evidence, not a universal ranking.
Not included
The supported surface does not include a remote package registry and solver, async/await, an executor, user-facing atomics or locks, networking, regex, JSON, reflection or derive generation, explicit SIMD types, memory-mapped files, or custom container allocators.
Internal syntax, reports, runtime layout, manifest details, diagnostics, and ABI may change before 1.0.
Implementation anchors
The release command surface is dispatched by src/main.psm; compilation converges in
src/driver/compile.psm. src/sema/checker.psm coordinates semantic checking with specialized
generic, enum, ownership, flow, and symbol modules. src/aif owns allocation facts and plans.
src/ir/module.psm, expr.psm, and statement.psm issue ir_* operations to
runtime/llvm-api-backend.c. Application runtime behavior is split between
runtime/lang_runtime.c and program_support.c; object emission and linking live in
runtime/build_driver.c. UMS starts at umsLoadProject() and lowers through
umsBuildPlanCreate() into src/project/ums_cli.psm execution.
Release evidence
The release procedure requires a named compiler candidate, two successor generations with
byte-identical canonical compiler IR, successful reconstruction from the target-neutral seed, the
full regression suite, independent AIF differential, corpus and verifier sweeps, JIT/native checks,
cross-target checks, and a packaged-toolchain smoke test outside the checkout. The platform archive
is produced by tools/release.py and accompanied by a SHA-256 file.
These checks establish that the documented implementation can reproduce itself and that the tested surface works on the release matrix. They do not create post-1.0 source or ABI guarantees, prove foreign implementations honor contracts, or turn unsupported benchmark entries into implemented features.