EvalXR is an interactive Rust compiler that compiles code into dynamically loaded libraries for iterative evaluation without restarting the process. It serves as a Rust Jupyter kernel, a notebook runtime, and a REPL environment, all with state retention across evaluations.
The project provides a stateful Rust evaluation engine that runs code snippets in isolated sandboxes while keeping functions and variables alive between executions. It supports cell-based execution, compiling Rust code into a shared library and loading it into the same process to preserve state, with an error-aware compilation pipeline that captures and reports compiler errors and panics as structured messages. Communication with Jupyter frontends follows the standard ZMQ-based message protocol for interactive notebook execution.
The tool enables interactive Rust programming, literate programming with Rust, and Rust code prototyping. It supports Jupyter cell execution with rich output, persistent interactive sessions for debugging, variable and type inspection, and shareable Rust notebooks.