| ▲ | armchairhacker 11 hours ago | |||||||||||||||||||||||||||||||||||||||||||
Nowadays I’ve heard recommended Crafting Interpreters. (https://craftinginterpreters.com) The Nanopass paper link doesn’t work. | ||||||||||||||||||||||||||||||||||||||||||||
| ▲ | gobdovan 9 hours ago | parent | next [-] | |||||||||||||||||||||||||||||||||||||||||||
Compilers are broad enough that when someone recommends a "compiler book", it's rarely exactly the slice you wanted. So this made me do a runnable cheat sheet for Crafting Interpreters. I keep parsing demonstrative, and the AST is a little more Lisp-y than the book's. Disclaimer: it's meant to convey the essence of what you'll learn, it is NOT by any means a replacement for the book. I'd also describe the book as more of an experience (including some things Nystrom clearly enjoyed, like the visitor pattern) than a compilers manual. If anyone's interested, I can do a separate visitor-pattern cheat sheet too, also in Python. I turned it into a 'public-facing artifact' from private scripts with an AI agent. [0] https://ouatu.ro/blog/crafting-interpreters-cheat-sheet/ | ||||||||||||||||||||||||||||||||||||||||||||
| ▲ | orthoxerox 8 hours ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||
Crafting Interpreters is great, I wish it had a companion book that covered:
Then two of them would be sufficient for writing a compiler. | ||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||
| ▲ | tmountain 10 hours ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||
Incredible book for self guided learning! | ||||||||||||||||||||||||||||||||||||||||||||
| ▲ | ramon156 10 hours ago | parent | prev | next [-] | |||||||||||||||||||||||||||||||||||||||||||
Awesome course! finished it while i was doing my final CS year because I had to wait on a bunch of classes (and frankly had no one to talk to before classes). I haven't tried nanopass, but there's other links that work, so I'll give it a go. | ||||||||||||||||||||||||||||||||||||||||||||
| ▲ | menato 7 hours ago | parent | prev [-] | |||||||||||||||||||||||||||||||||||||||||||
[dead] | ||||||||||||||||||||||||||||||||||||||||||||