Skip to main content

compile_module

Function compile_module 

Source
pub fn compile_module(src: &str) -> Result<Rc<ModuleData>, Error>
Expand description

Compile Elly module source into a frozen ModuleData: read the Muon syntax, parse it into imports and name = body items (parse_module), then resolve each body against the module’s item set (resolve_module_bodies, turning sibling references into Expr::ModItem). Compiling is purely syntactic — no body is evaluated, and no import is resolved. See docs/done/2026-08-07_elly-modules-v0.md.

The module’s imports become its leading frame slots, so source that imports compiles fine here but has to be instantiated against the instances. Use load_module to compile and instantiate a whole import graph.