14 lines
670 B
Markdown
14 lines
670 B
Markdown
# rlox
|
||
|
||
`rlox` is an unpronouncable variant of the tree-walk interpreter laid out in
|
||
[Crafting Interpreters](http://craftinginterpreters.com/), written in Ruby,
|
||
because I want to learn it.
|
||
|
||
It deviates a little from the “canonical” version of Lox. I don’t use code
|
||
generation for the expressions, and I don’t use the visitor pattern. `var` and
|
||
`fun` are `let` and `fn`, respectively. And we don’t need parentheses around
|
||
branching conditions, instead we require the bodies to be blocks. We also have
|
||
closures and anonymous functions (and literals for them), and implicit returns.
|
||
|
||
If you wonder what that looks like, you can look at the [examples](/examples).
|