Nand2Tetris cource
- Jack language compiler A Rust-based compiler for the Jack programming language, converting
.jacksource files into VM code. It supports tokenization, parsing into an AST, and emitting.vmoutput via a simple command-line interface. Optionally, it can dump XML representations of tokens and parse trees for debugging. - Jack language VM translator. A lightweight Rust-based tool that converts Nand2Tetris-style
.vmfiles into Hack assembly.asmfiles. It implements a full lexing, parsing, and translation pipeline, and supports both individual files and entire directories in one run. Debug output (tokens, AST) can be optionally enabled for introspection. - Hack language assembler. A compact Rust implementation of a Hack assembly → binary translator. It parses
.asmfiles, resolves symbols and labels, and emits.hack(and optional raw.hack.bin) outputs, with debug flags for tokens, AST, and the symbol table.
- Nand2Tetris Project — the original Hack platform specification
- Coursera: Build a Modern Computer from First Principles, Part I — course (I) these projects are inspired by
- Coursera: Build a Modern Computer from First Principles, Part II — course (II) these projects are inspired by