There are my implementations of the nand2tetris projects while reading The Elements of Computing Systems (second edition) by Noam Nisan and Shimon Schoken (MIT Press).
The repository is based on my download of the Nand to Tetris Software package, freely available under the GNU General Public License. This is now considered the "legacy desktop version" of the Java programs required to run the code, I've chosen these over the online IDE so the repo self-contains everything needed to run the projects outside of the Java run-time environment itself. This version also feels closest to the tools described in the second edition of the paperback textbook I am reading.
Below is my checklist tracking completion of the projects.
- Project 1: Boolean Logic
- Project 2: Boolean Arithmetic
- Project 3: Memory
- Project 4: Machine Language
- Project 5: Computer Architecture
- Project 6: Assembler
- Project 7: VM I: Stack Arithmetic
- Project 8: VM II: Program Control
- Project 9: High-Level Language
- Project 10: Compiler I: Syntax Analysis
- Project 11: Compiler II: Code Generation
- Project 12: Operating System