This is a really simple Lisp interpreter, written in Rust. Just for educational purposes. Used to discover how to work with lexing libraries and how to write basic interpreter. Functionality that is done works really solid, but do not expect any new functionality beyond ones that listed in the Features.
Based on v0.0.1 of this book but with distinct difference in underground structure of lexing and operator evaluation as operators now accept arbitrary number of arguments.
- Integers
- Floats
- Variable definitions
- Conditionals
- Lambdas
- Arbitrary number of arguments for operators
- Advanced parsing using logos
- Advanced REPL with history using rustyline
- File Evaluation
Download latest release on Github for your target platform.
- Clone repository
- Run:
cargo build --release
- Executable is created at
target/release/lisp-rs
Usage:
Start a REPL lisp-rs
Execute file lisp-rs [FILE_PATH]
Main options:
-h, -?, --help Print this help message and exit
Check lisp-examples project directory.