Static copy
Copied from docs/en/architecture/bytecode-and-vm.md in https://github.com/poppy-team/aipo-lang (MIT). Pinned to revision ce47c4e070404fc41722ccd8e2b7b808b99062a8, blob 6c6c5de8b91116f335617993bc0371f786a6d4c7. The source repository remains canonical; this copy is refreshed through a sync pull request, not live.
Aipo executes natively on a deterministic bytecode virtual machine, optimized for low memory footprint and high-throughput instruction dispatch.
.aibc Binary Format The Aipo compiler can serialize bytecode chunks directly into an .aibc binary archive:
AIBC followed by format version integer (currently 1).aipo-vm) Value) The core Value enum is compact (48 bytes) with heap variants reference-counted via Rc:
Int(i64), Float(f64), Bool(bool), NoneString(Rc<str>), List(Rc<RefCell<Vec<Value>>>), Dict, Set, BytesClosure, BoundMethod, TaskHandle, HostHandlematch branches, eliminating bulky 72-byte Result allocations on every CPU cycle.The aipo disasm command disassembles bytecode instructions and maps each mnemonic directly to its originating source line, streamlining profiling, debugging, and security audits.