Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

It's possible to work through Bob Nystrom's Crafting Interpreters[1] using any language you want. On GitHub just search for "crafting interpreters"[2] and add a filter for the programming language you're interested in, and you'll find at least a couple repos for the entire book. There are over a dozen complete repos in Rust. Since everyone breaks out each chapter in a separate folder, it's easy to follow along with the book, even though the book's first interpreter is written in Java and the second compiler was written in C. I did this, it's basically how I learned Rust.

[1] https://www.craftinginterpreters.com [2] https://github.com/search?q=crafting+interpreters



Concur with this recommendation. Coincidentally, I started this project just recently, having really enjoyed completing Make a Lisp [0] a couple of years ago, and now needing something to do while I recover from a medical condition. I'm really impressed with Nystrom's writing style and Interpreter development process.

My long term goal - which should keep me going for absolutely ages - is to use something like Nystrom's byte-code virtual machine as a basis for having another go at MAL. I completed MAL using C#, and am currently using Visual Studio / C# to complete Nystrom's stuff (rather than the Java / C combo that he uses). But I'm just about to restart Nystrom using a different language (again, perhaps Rust) to give myself more of a challenge.

[0] https://github.com/kanaka/mal/blob/master/process/guide.md


Thanks. Will also try it in Rust.

The web version of the book looks super nice. Anybody knows what Bob Nystrom used to build it? https://www.craftinginterpreters.com/introduction.html

handcrafted?




It seems to be handcrafted. https://github.com/munificent/craftinginterpreters/tree/mast...

Custom dart code to convert and process markdown.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: