Roadmap search
Versions, deliverables, workstreams, tasks, and pages
Compiler
src/content/docs/platform-spec/compiler/index.mdx
import SpecPageHeader from '@beskid/beskid-ui/platform-spec/SpecPageHeader.astro'; import SpecSection from '@beskid/beskid-ui/platform-spec/SpecSection.astro'; import DomainTiles from '@beskid/beskid-ui/platform-spec/DomainTiles.astro';
<SpecPageHeader ownerName="Piotr Mikstacki" ownerEmail="pmikstacki@cybernomad.it" submitterName="Piotr Mikstacki" submitterEmail="pmikstacki@cybernomad.it" />
<SpecSection title="Rationale" id="rationale"> The compiler domain owns **implementation-facing contracts**: phases that must exist, ordering constraints, diagnostic classes, and how source maps tie back to user code. Language *semantics* that users rely on without caring about pipeline shape live primarily under [Language meta](/platform-spec/language-meta/). </SpecSection> <SpecSection title="Background" id="background"> **Build pipeline** — Formal contracts for the reference compiler’s resolution, lowering, lockfile/workspace behaviour, diagnostics surfaces, and JIT versus AOT backends live under **[Build pipeline](/platform-spec/compiler/build-pipeline/)** (area with feature leaves and an architecture graph).Execution — Long-form runtime ABI, IR narrative, and host integration chapters remain under Execution; the build-pipeline area links to those chapters from backend features where relevant.
Normative language law — The Language meta domain is the canonical language specification surface; compiler pages do not fork normative prose.
Compiler Mods — Mod host orchestration, AOT artifact lifecycle, typed collector/generator/analyzer/rewriter execution, stable beskid_pipeline phase ids, and incremental determinism under Compiler Mods. Beskid contracts: Compiler Mod SDK. Rust composition: Pipeline composition. v0.3 dynamic mapping: Dynamic types and mapping.
</SpecSection>