Following the Robert Nystrom book Crafting Interpreters, in Rust.
An overview of the lox language can be found here.
- Tokens and lexing
- Abstract syntax trees
- Recursive descent parsing
- Prefix and infix expressions
- Runtime representation of objects
- Interpreting code using the Visitor pattern
- Lexical scope
- Environment chains for storing variables
- Control flow
- Functions with parameters
- Closures
- Static variable resolution and error detection
- Classes
- Constructors
- Fields
- Methods, and finally
- Inheritance