n8ta / crlox

A rust implementation of clox

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

crlox

Crlox is a rust implementation of the lox language from the book craftinginterpreters.

Language Features

  • Dynamic (python like field assignments)
  • Closures, first class functions, & lexical scope
  • Bound methods
  • Dense bytecode format for fast execution and lower memory overhead
  • Robust source code tracking that can print source code of any runtime exception.

Building

Only cargo required.

cargo build
cargo run path_to_program.lox

Testing

cargo test

Tests are in ./tests and run textXYZ.lox and compare its output to outXYZ.lox in teh same directory. As features are complete new tests can be moved out of ./tests/not_ready

About

A rust implementation of clox


Languages

Language:Rust 100.0%Language:Python 0.0%