Crafting Interpreters (JavaScript)
Robert Nystrom's CC BY-NC-ND 4.0 book on building a programming language end to end — first half (tree-walking interpreter) ported from Java to JavaScript. Walks through scanning, parsing, AST visitors, evaluation, scoping, closures, classes, and inheritance. The bytecode-VM second half (ch14+) is in C and lives outside this pack.
- JavaScript
- 30 lessons
- ~6 hours
- Free
- by Robert Nystrom
Learn JavaScript for free on Libre Academy with the Crafting Interpreters (JavaScript) course: 30 interactive lessons you complete by writing real code in a built-in editor, graded instantly by hidden tests. No paywall, no sign-up. It's part of the free, open-source desktop app for macOS, Windows and Linux.
What you get
- Hands-on lessons with a real editor and instant, test-graded feedback.
- Free and open source, with no account required to start.
- Works offline in the free desktop app for macOS, Windows and Linux.
- JavaScript runs instantly in the app.
What's inside
- The Lox Language
- Scanning
- Representing Code
- Parsing Expressions
- Evaluating Expressions
- Statements and State
- Control Flow
- Functions
- Resolving and Binding
- Classes and Inheritance
Download to start Crafting Interpreters (JavaScript) → More free JavaScript courses
Helpful reading
Why passive video doesn't make you a programmer · Bring Your Own Book: turning any PDF into a course