This book contains everything you need to implement a full-featured, efficient scripting language. You’ll learn both high-level concepts around parsing and semantics and gritty details like bytecode representation and garbage collection. Your brain will light up with new ideas, and your hands will get dirty and calloused. It’s gonna be a blast.
main(), you’ll build a language that features rich syntax, dynamic typing, garbage collection, lexical scope, first-class functions, closures, classes, and inheritance. All packed into a few thousand lines of clean, fast code that you will thoroughly understand because you wrote each one yourself.
You can read the whole book, for free, online.
Crafting Interpreters, a new book in progress by Bob Nystrom, looks like it’s set to be one of the most approachable guides on developing interpeters and compilers, soup to nuts, that you can find. I’m going to be digging into this.
Via Michael Nygard.