~cdv/loxen

A lox interpreter (called glox). https://craftinginterpreters.com
Add rust to builds
[relox] Variables
[relox] Many changes, notably, strings.

refs

master
browse  log 

clone

read-only
https://git.sr.ht/~cdv/loxen
read/write
git@git.sr.ht:~cdv/loxen

You can also use your local clone with git send-email.

#Loxen, polyglot Lox implementations

This is a collections of implementations of the lox langauge as built in Crafting Interpreters by Robert Nystrom. All credit to him for the great book. I highly encourage you to look into it if you're interested in looking into how languages are built.

#Complete Implementations

  • glox, a tree walking interpreter in go.
  • cdvlox, a bytecode C implementation, in the style of clox.

#In Progress

  • relox, a rust bytecode interpreter for lox. With most exercises completed.

#Building

Every directory is self contained. Here is what is necessary to build each project:

  • glox: cd go && go build
  • cdvlox: cd c && meson build [...options] && ninja -C build
  • relox: cd rs && cargo build [...options]

#Test Suite

The test suite has been adapted from the main Crafting Interpreters test suite, under the terms of the MIT License. The original source and copyright notice are present at the main github repository: https://github.com/munificent/craftinginterpreters.git