Nand to Tetris


1. Logic

Build the individual chips using only NAND.

2. Arithmetic

Build an Arithmetic Logic Unit.

3. Memory

4. Machine Language

5. Computer Architecture

6. Assembler

Writing an assembler for the Hack language.

8. Virtual Machine II

9. High-level Language

High-level language. An introduction to Jack.

Blog

Reflections on project construction.

Racket

Advanced programming techniques useful for compilers.

Resources