tvl-depot/users/tazjin/rlox
Vincent Ambo 3d1b116f7f feat(tazjin/rlox): Implement single-character scanning
... still not that interesting, but at this point slightly divergent
from the book:

The book embraces mutability for interpreter state, initially for
tracking whether an error condition has occured.

I avoid this by instead defining an error type and collecting the
error values, to be handled later on.

Notes: So far nothing special, but this is just the beginning of the
book. I like the style it is written in and it has pointed to some
interesting resources, such as a 1965 paper titled "The Next 700
Languages".

Change-Id: I030b38438fec9eb55372bf547af225138908230a
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2144
Reviewed-by: tazjin <mail@tazj.in>
Tested-by: BuildkiteCI
2020-11-23 01:15:57 +00:00
..
src feat(tazjin/rlox): Implement single-character scanning 2020-11-23 01:15:57 +00:00
.gitignore feat(tazjin/rlox): Bootstrap program 2020-11-23 01:15:57 +00:00
Cargo.lock feat(tazjin/rlox): Bootstrap program 2020-11-23 01:15:57 +00:00
Cargo.toml feat(tazjin/rlox): Bootstrap program 2020-11-23 01:15:57 +00:00
default.nix feat(tazjin/rlox): Add basic program structure 2020-11-23 01:15:57 +00:00
README.md feat(tazjin/rlox): Bootstrap program 2020-11-23 01:15:57 +00:00

This is an interpreter for the Lox language, based on the book "Crafting Interpreters".

The book's original code uses Java, but I don't want to use Java, so I've decided to take on the extra complexity of porting it to Rust.

Note: This implements the first of two Lox interpreters.