Some personal projects I've been working on.

Crafting Interpreters

I've been working through Crafting Interpreters by Robert Nystrom.

My first implementation of the lox language was written in Standard ML. The demo uses SMLtoJs to compile the interpreter to JS.

I also wrote a bytecode interpreter implementation in C++ (called cpplox) and started a treewalk implementation in Rust.


An interactive debugger for brainfuck.

This was an exploration of building a front-end web application using Rust (compiled to wasm). The implementation includes a small Rust implementation of a brainfuck interpreter, a command line debugger and a web debugger.

Programming Challenges

I love coding challenges.

I work through Advent of Code each year (usually in Python and one other language).

I'm currently collating my solutions in one repo, but here is the repo for my 2022 solutions.

I have also really enjoyed protohackers. I have solutions in python and rust: link.