Skip to content

Recursive, top-down, language processing, and So Can You!

License

Notifications You must be signed in to change notification settings

mudphone/nand2tetris

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 

Repository files navigation

What is this?

I've used LFE and Elixir (and other tools) to follow the Nand2Tetris course, which guides "self-learners through the construction of a modern, full-scale computer system - hardware and software - from the ground up. In the process, the students practice many major computer science (CS) abstractions studied in typical CS courses and make them concrete through 12 guided implementation projects."

The Parts

                +----------+               +------------+                         +-----------+
Jack Program ---| Compiler |--> VM Code ---| Translator |--> Assembly Language ---| Assembler |--> Machine Code
                +----------+               +------------+                         +-----------+

|<-------------see below------------->|                
                +---------------------------------------------------------------------------+
                | Compiler                                                                  |
                |                                                                           |
                |   +----------------------------------------------+                        |
                |   | Syntax Analyzer                              |                        |
                |   |                                              |                        |
                |   |   +-----------+   +----------------------+   |   +----------------+   |
Jack Program ---|---|-->| Tokenizer |-->| Parser               |---|-->| Code Generator |---|---> VM Code
                |   |   +-----------+   | (Compilation Engine) |   |   +----------------+   |
                |   |                   +----------------------+   |                        |
                |   +----------------------------------------------+                        |
                |                                                                           |
                +---------------------------------------------------------------------------+

The Overview Video

Based on:

The Elements of Computing Systems: Building a Modern Computer from First Principles, Nand to Tetris Companion, by Noam Nisan and Shimon Schocken

About

Recursive, top-down, language processing, and So Can You!

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published