Skip to content
PT

Static copy

Copied from docs/en/architecture/crates.md in https://github.com/poppy-team/aipo-lang (MIT). Pinned to revision ce47c4e070404fc41722ccd8e2b7b808b99062a8, blob e1330d7669cd3c1a8744dc44d89511badb142d9d. The source repository remains canonical; this copy is refreshed through a sync pull request, not live.

Workspace Crate Contracts ​

The Aipo codebase is structured as a collection of modular Rust crates, each enforcing strict domain boundaries and acyclic dependency graphs.


Crate Inventory ​

CratePrimary DomainInternal Dependencies
aipo-sourceSource file representation & UTF-8 safe boundary indexingNone
aipo-diagnosticsStable diagnostic catalog, source spans & formattingaipo-source
aipo-lexerZero-copy UTF-8 tokenizer & lexical validationsaipo-source, aipo-diagnostics
aipo-astAbstract Syntax Tree node definitionsaipo-source, aipo-diagnostics
aipo-syntaxRecursive-descent parser with error synchronizationaipo-lexer, aipo-ast, aipo-diagnostics
aipo-hirHigh-level Intermediate Representation loweringaipo-ast, aipo-diagnostics
aipo-semaSemantic validation & structural contract checksaipo-hir, aipo-diagnostics
aipo-irLinearized Core Intermediate Representationaipo-hir, aipo-diagnostics
aipo-bytecodeInstruction encoding & .aibc binary serializationaipo-ir, aipo-diagnostics
aipo-vmBytecode virtual machine & cooperative async scheduleraipo-bytecode, aipo-diagnostics
aipo-jsJavaScript ES2022 emitter & Source Maps V3aipo-hir, aipo-diagnostics
aipo-hostSandboxed Host ABI, capabilities & generational handlesaipo-diagnostics
aipo-runtimeHost runtime registration & native module managementaipo-vm, aipo-host
aipo-stdlibCanonical standard library modulesaipo-runtime, aipo-vm
aipo-poppyHeadless ECS simulation adapteraipo-host, aipo-vm
aipo-formatterAutomatic source code formattingaipo-syntax, aipo-ast
aipo-cliUnified CLI entrypoint (aipo)All crates above