description: Isomorphic LPC Virtual Machine and Microkernel. Originally
conceived as a crash-proof, Ring-0 compatible execution environment for
bare-metal x86. Currently instantiated as a strict, deterministic, and fully
functional JavaScript MVP. type: system status: mvp_v1_complete tags: [lpc,
vm, microkernel, compiler, bytecode, x86-architecture]
EXECUTION_CORE {lpc-core-0001}
description: The bytecode execution engine and green-thread scheduler.
Operates strictly on fixed-width 32-bit instructions. type: architecture tags:
[vm, scheduler, context-switching]
BYTECODE_EVALUATOR {lpc-core-0002}
description: A massive switch-case evaluation loop executing ALU operations,
relative jumps, and memory access opcodes. Completely decoupled from game
logic. type: component status: complete tags: [interpreter, bitwise]
SHADOW_STACK_ABI {lpc-core-0003}
description: Call stack implementation enforcing a strict C-style ABI.
Preserves caller execution context, IP, and variables (R3-R7), while using R0
for return values and R1-R2 for volatile arguments. type: component status:
complete tags: [abi, call-stack]
MICROKERNEL_SCHEDULER {lpc-core-0004}
description: Preemptive, gas-metered run-queue for execution contexts (CTX).
Prevents infinite loops by forcing context yields when execution limits are
reached. type: component status: complete tags: [green-threads,
cooperative-multitasking]
MEMORY_MODEL {lpc-mem-0001}
description: Deterministic, pointer-free memory isolation. All structures
exist within flat, pre-allocated arenas (Int32Array/Uint8Array) to guarantee
Ring-0 x86 portability. type: architecture tags: [memory, zero-allocation,
arenas]
TAGGED_POINTERS {lpc-mem-0002}
description: Unified 32-bit variable architecture where the lowest 3 bits
define payload type (0=Object, 1=Integer, 2=String, 3=Array). type: protocol
status: complete tags: [bitwise, typing]
GLOBAL_HANDLE_LEDGER {lpc-mem-0003}
description: Intrusive linked list operating over a flat Int32Array. Manages
dynamic data handles (Strings, Arrays) via strict reference counting and
zero-copy references. type: data_structure status: complete tags:
[ref-counting, intrusive-list]
MASTER_OBJECT_INDEX {lpc-mem-0004}
description: Central registry mapping Object IDs (OIDs) to their Blueprint ID
and their exact offset inside the global State Arena. type: data_structure
status: complete tags: [registry, oop, state-management]
COMPILER_PIPELINE {lpc-comp-0001}
description: The multi-pass JavaScript compiler that translates human-readable
LPC (.c files) into JSON ASTs, and finally into binary Blueprint Records.
type: architecture tags: [compiler, ast, lexer, parser]
STRICT_LEXER_PARSER {lpc-comp-0002}
description: Character-by-character state machine Lexer and recursive descent
Parser generating a strict JSON Abstract Syntax Tree (AST). type: component
status: complete tags: [ast, tokenization]
BLUEPRINT_FLATTENER {lpc-comp-0003}
description: Compile-time inheritance resolution. Parses inherit statements,
merging parent global variables and overriding VTable functions directly into
the child blueprint. The VM execution core remains ignorant of inheritance.
type: logic status: complete tags: [polymorphism, compilation]
IPC_AND_IO {lpc-io-0001}
description: The event-driven input/output model. Operates completely
asynchronously without blocking the Host OS thread. type: architecture tags:
[async, actor-model, vfs]
ACTOR_MAILBOX {lpc-io-0002}
description: Asynchronous messaging system. Objects communicate via post_mail.
If read_mail is called on an empty queue, the engine emits STATE_YIELD_IO,
suspending the CTX into a Wait Table until mail arrives. type: logic status:
complete tags: [ipc, actor-model, messaging]
VIRTUAL_FILE_SYSTEM {lpc-io-0003}
description: RAM-backed file system storing .c source files. Integrated
directly into clone_object for Just-In-Time (JIT) fetching and compilation of
missing blueprints. type: component status: complete tags: [vfs, jit, loader]
ROADMAP_WIZARD_REPL {lpc-repl-0001}
description: Interactive Node.js CLI environment supporting MUD wizard
commands (ls, clone, destr, list, call). type: roadmap_target status: pending
tags: [cli, developer-experience] depends_on: [lpc-core-0001, lpc-mem-0001]
REPL_DYNAMIC_EVAL {lpc-repl-0002}
description: Allows execution of raw LPC snippets via a lpc <code> command by
wrapping input in a temporary blueprint, JIT-compiling it, and executing it
instantly. type: feature status: pending tags: [repl, jit] depends_on:
[lpc-repl-0001, lpc-comp-0001]
ROADMAP_MODULAR_EFUNS {lpc-efun-0001}
description: Pluggable architecture for system calls. Moves IVT definitions
out of the core engine into separate files (e.g., efuns/sys_write.js). type:
roadmap_target status: pending tags: [modular, ivt, syscalls]
EFUN_AUTO_LOADER {lpc-efun-0002}
description: Host boot sequence that scans the efuns/ directory, dynamically
assigns IVT IDs, maps them to the VM, and provides a resolution table to the
Compiler. type: feature status: pending tags: [bootstrap, injection]
depends_on: [lpc-efun-0001]
ROADMAP_FS_BRIDGE {lpc-fs-0001}
description: Upgrades the VFS to synchronously read missing files from the
host machines physical file system and cache them into the RAM dictionary.
type: roadmap_target status: pending tags: [fs, integration] depends_on:
[lpc-io-0003]
NET_SYNC_DAEMON {lpc-fs-0002}
description: Future background task to sync the VFS over the network (Mesh OS
tunnels) asynchronously, without blocking the VM run queue. type: feature
status: planning tags: [network, sync, async] depends_on: [lpc-fs-0001]