Hacker GitHub

← All repos

munificent/craftinginterpreters

View on GitHub ↗ ★ 11,130 HTML

Repository for the book "Crafting Interpreters"

42 mentions on Hacker News by 19 people: 2 stories, 40 comments · first 2017-01-16 · latest 2026-07-23

Mentions per year 42 mentions · busiest year 2017 (7)
20082026
  1. ▲ 2
    Show HN: Plox – Lox compiler in ~600 LOC from the 'Crafting Interpreters' book
    story by eliasdejong · 2026-07-23 · 0 comments
  2. An optional challenge gives an implementation of arrays for jlox at least: https://github.com/munificent/craftinginterpreters/blob/4a84...
  3. …of the book into whatever language you want. People have posted versions in dozens of languages: https://github.com/munificent/craftinginterpreters/wiki/Lox-... (There are fewer options for the second half, since you need more control over…
    comment by SatvikBeri · 2025-10-27 · in Wren: A classy little scripting language
  4. Cool! I did not know about that book. Added to [1]. :-) -- 1: https://github.com/munificent/craftinginterpreters/issues/92...
    comment by emmanueloga_ · 2025-05-06 · in Nnd – a TUI debugger alternative to GDB, LLDB
  5. …and a few custom scripts: https://journal.stuffwithstuff.com/2020/04/05/crafting-craft... , https://github.com/munificent/craftinginterpreters/tree/mast... . This is how those famous 10x writers/programmers work, I guess. Asciidoc is…
    comment by red_admiral · 2025-02-06 · in Markdown's Big Brother: Say Hello to AsciiDoc
  6. ▲ 2
    Show HN: RasperDucky, an Implementation of DuckyScript3 for Raspberry Pico
    story by leogout · 2024-11-02 · 0 comments
  7. The license is here: https://github.com/munificent/craftinginterpreters/blob/mast... Though now that I look at it, I apparently completely forgot to specify how the images should be licensed. Oops. It's not a big deal and I really…
  8. There are a whole pile of Lox implementations in Rust (as well as many other lanugages): https://github.com/munificent/craftinginterpreters/wiki/Lox-...
  9. …time tracking down an issue with how the reference interpreter implementation defines tokens: https://github.com/munificent/craftinginterpreters/issues/11... which was frustrating but good debugging practice.
  10. Lots of people have done implementations in other languages: https://github.com/munificent/craftinginterpreters/wiki/Lox-... I did the first half in Clojure (in order to teach myself Clojure), worked just fine. I had to do a bit of…
    comment by SatvikBeri · 2024-07-13 · in Crafting Interpreters
  11. I’m guessing you’ll have to work with the scopes in the resolver: https://github.com/munificent/craftinginterpreters/blob/mast...
    comment by emmanueloga_ · 2023-09-27 · in Writing a debugger from scratch: Breakpoints
  12. …honestly I still haven't gotten down to read all of them (or to implement a debugger! :-/). -- 1: https://github.com/munificent/craftinginterpreters/issues/92...
    comment by emmanueloga_ · 2023-09-27 · in Writing a debugger from scratch: Breakpoints
  13. …state of each interpreters (including your own) at the end of each chapter, which is really cool: https://github.com/munificent/craftinginterpreters#testing-y...
  14. I love the crafting interpreters book, https://github.com/munificent/craftinginterpreters
  15. …text are intertwined while Crafting Interpreters keeps code aligned to text but they are distinct https://github.com/munificent/craftinginterpreters EDIT: BTW the book is great, can't recommend it enough! :)
    comment by evacchi · 2022-04-29 · in Crafting Interpreters
  16. …to understand it. Also, all of the code in the book has been ported to a large number of languages: https://github.com/munificent/craftinginterpreters/wiki/Lox-...
    comment by munificent · 2022-02-14 · in Crafting Interpreters – Web Version
  17. The content of the book isn't open source, but the code in it and the code for the build system is: https://github.com/munificent/craftinginterpreters
    comment by munificent · 2022-01-06 · in Yet Another Roguelike Tutorial
  18. It seems to be handcrafted. https://github.com/munificent/craftinginterpreters/tree/mast... Custom dart code to convert and process markdown.
  19. …the C details and get by. Also, the code in the book has been ported to many other languages: https://github.com/munificent/craftinginterpreters/wiki/Lox-... So you can always use those as a reference too.
    comment by munificent · 2021-08-05 · in Six hundred and forty pages in fifteen months
  20. …The first is in Java, and the second in C. The code has also been ported to many other languages: https://github.com/munificent/craftinginterpreters/wiki/Lox-...
    comment by munificent · 2021-07-29 · in Crafting Interpreters is available in print
  21. That's correct. The entire build system is: https://github.com/munificent/craftinginterpreters/tree/mast...
    comment by munificent · 2021-07-29 · in Crafting Interpreters is available in print
  22. …else, but maybe there are some good ideas in there for other websites? Edit: I guess that’s here: https://github.com/munificent/craftinginterpreters/blob/mast...
  23. Readers have ported the code in the book to many languages already: https://github.com/munificent/craftinginterpreters/wiki/Lox-... That means it's either not too hard to do yourself, or at the very least you can use their ports as a…
    comment by munificent · 2021-07-29 · in Crafting Interpreters is available in print
  24. …it has classes (not prototypes), which JS didn't get until later. Also many other implementations: https://github.com/munificent/craftinginterpreters/wiki/Lox-...
  25. …could add a design note in the chapter with the mentioned content? Great idea! Made a note of it: https://github.com/munificent/craftinginterpreters/issues/62...
    comment by munificent · 2020-03-18 · in Crafting Interpreters: Superclasses
  26. …tool by Bob Nystrom with many implementations [1] and a great (work in progress) book [2] [1] https://github.com/munificent/craftinginterpreters/wiki/Lox-... [2] http://craftinginterpreters.com/
  27. …There is an exercise in one of the chapters to add them, and you can see my answer to that here: https://github.com/munificent/craftinginterpreters/blob/mast...
    comment by munificent · 2019-09-27 · in Crafting Interpreters: Closures
  28. …255. You are not mistaken. I changed the limit, but missed that part. Filed an issue to fix this: https://github.com/munificent/craftinginterpreters/issues/46... Thank you!
    comment by munificent · 2019-07-25 · in Crafting Interpreters: Calls and Functions
  29. …already feel feature-complete for the way you think and work when organizing book content? [0] https://github.com/munificent/craftinginterpreters/blob/mast... [1] https://github.com/munificent/game-programming-patterns/blob...
  30. …on it (except for a few months in the beginning when the project was still kind of nebulous): https://github.com/munificent/craftinginterpreters/blob/mast...
    comment by munificent · 2018-09-24 · in Crafting Interpreters: Strings
  31. …with a red pencil. Whatever works for you, works. [1]: http://www.craftinginterpreters.com/ [2]: https://github.com/munificent/craftinginterpreters/tree/mast...
    comment by munificent · 2018-09-05 · in The Tools I Use to Write Books
  32. …ithub.com/munificent/game-programming-patterns/blob... [3]: http://www.craftinginterpreters.com/ [4]: https://github.com/munificent/craftinginterpreters/tree/mast... [5]: https://github.com/munificent/craftinginterpreters/blob/mast...
  33. Just a handful of Python scripts: https://github.com/munificent/craftinginterpreters/tree/mast... The book is written in Markdown. The code samples are stored in separate files so that I can compile and test them. The code has little…
    comment by munificent · 2018-04-06 · in A Virtual Machine
  34. …curious people have ported the code in the book to a lot of languages. Some of them are here: https://github.com/munificent/craftinginterpreters/wiki/Lox-... Though, if you want to do this yourself, consulting those might be considered…
    comment by munificent · 2018-04-06 · in A Virtual Machine
  35. All source is here. https://github.com/munificent/craftinginterpreters
    comment by colonelxc · 2018-04-06 · in A Virtual Machine
  36. https://github.com/munificent/craftinginterpreters I should probably link to it from the site...
  37. A pretty simple hand-cobbled-together chunk of Python: https://github.com/munificent/craftinginterpreters/blob/mast... It's more complex than the build script[1] for my previous book[2], but still pretty simple. There's a real luxury in…
  38. …the code for it here [2]. [1]: http://www.craftinginterpreters.com/a-bytecode-virtual-machi... [2]: https://github.com/munificent/craftinginterpreters/blob/mast...
  39. The repo is here https://github.com/munificent/craftinginterpreters so you could have looked without the need for 'comedic' guessing. It contains exactly zero getX/setX methods.
  40. …hide it persistently after the first time you closed it. I'll try to resurrect that for this one. https://github.com/munificent/craftinginterpreters/issues/11
  41. …and eval make it a lot harder. It's pretty dense, but I liked "Lisp in Small Pieces" a lot. [1]: https://github.com/munificent/craftinginterpreters
  42. …Meanwhile, it looks like both interpreters are available to study now in the Git repo. [1] [1]: https://github.com/munificent/craftinginterpreters