Skip to main content

rl_lang/interpreter/
mod.rs

1//! The rl tree-walking interpreter.
2//!
3//! # Pipeline
4//!
5//! ```text
6//! source text
7//!   └─ Tokenizer::lex()       → Vec<Token>
8//!   └─ Parser::parse()        → Vec<Statement>
9//!   └─ Resolver::resolve()    → Vec<Statement>  (names → depth/slot)
10//!   └─ Evaluator::evaluate_program() → ()
11//! ```
12//!
13//! # Modules
14//!
15//! - [`evaluator`] - the core [`Evaluator`] struct and expression evaluation
16//! - [`values`] - the [`Value`] enum representing all runtime values
17//! - [`native`] - [`Module`], [`NativeFn`], and the trait system for binding Rust functions
18//! - [`scopes`] - environment stack: push/pop/insert/assign/get
19//! - [`stdlib`] - all built-in stdlib modules
20//! - [`utils`] - binary/unary operator dispatch and statement evaluation
21pub mod evaluator;
22mod evaluator_types;
23pub mod native;
24mod scopes;
25pub mod stdlib;
26mod utils;
27pub mod values;