Check out my personal projects below

Show 3 projects filtered by Programming Languages.

Minimal Visual Pedagogical Interpreter (2020)

The MVP (minimal visual pedagogical) interpreter is a substitution-based interpreter on a toy language. My goal is to demonstrate small-step operational semantics of programming languages visually for students new to this concept. The project supports single stepping forward/backward for the program execution and visualizes the AST at each step.

Embedded ML (2018)

Embedded ML is a static-typed embedded scripting language written in C++. The Embedded ML language is inspired by languages from the ML family. This project includes a compiler and a bytecode stack-machine runtime. The compiler first parses the source code by a hand-rolled a recursive-descent pratt parser and then pipes the result AST (abstract syntax tree) into type checker and code generator. Afterward, the runtime executes the bytecode generated by the code generator.