← Projects
A tree-walk interpreter for the Lox programming language, written in Python.
Python
Commits
43
Stars
1
Last Updated
Aug 2, 2023
Python 100%
Jinx is a Python implementation of Lox, the language from Bob Nystrom's Crafting Interpreters. Most people follow along in Java; I wanted to actually understand what I was building, so I did it in Python instead.
It's a full tree-walk interpreter: lexer, parser, resolver, and evaluator. Supports dynamic typing, first-class functions, closures, classes, and single inheritance.
Building an interpreter from scratch is one of those things that permanently changes how you read code. Highly recommended.