Hacker Blogs
Work in progress: 15,409 of 181,233 sites checked so far, more every week · updated 2 Nov 2026Missing a blog? Tell us

Top all-time · #146

R

Robert Nystrom

Personal blog · craftinginterpreters.com · on HN as munificentprogrammingwriting

Robert Nystrom writes Crafting Interpreters, a personal blog at craftinginterpreters.com about programming and writing. Since 2017, 277 different Hacker News readers have linked it 389 times, most often “Crafting Interpreters”. No feed was found, so read it on the site itself.

No feed foundVisit the blog
389mentions?
24recommend?
277HN people?
2017–2026first – last linked?
Links on Hacker News per year · peak 57 in 2020

Often recommended · 24 of 40 sampled comments recommend it?

Why HN links it

HN readers link craftinginterpreters.com as a free, step-by-step book for building a language and a VM, and as an example of readable technical writing. It is often suggested to people learning to write interpreters or compilers.

Recommended for · 24 comments
Called excellent, remarkably readable, super friendly and fantastically well-written; 'clear writing' with humor.

Summarised by Claude from a sample of 40 HN comments that link here. Each comment is marked recommending, critical or neutral (citing without judging); how this works.

The author on HN?

munificent · 48,834 karma · member since 2009

I'm Bob Nystrom. I worked at EA for eight years. I wrote "Game Programming Patterns" (gameprogrammingpatterns.com) and "Crafting Interpreters" (craftinginterpreters.com). I work at Google on the Dart language. I'm into programming languages, music, UX, software architecture, electronics, cooking, and lots of other stuff. https://github.com/munificent robert@stuffwithstuff.com

From their public HN profile, which links to this site.

Most-linked posts?

  1. Crafting Interpreters
    97 people · 107 mentions · first linked 2018-08-27
  2. Crafting Interpreters is available in print
    32 people · 38 mentions · first linked 2018-02-26
  3. Show HN: Crafting Interpreters – A handbook for making programming languages
    26 people · 32 mentions · first linked 2017-01-15
  4. /
    19 people · 19 mentions · first linked 2019-07-12
  5. Crafting Interpreters – Web Version
    18 people · 18 mentions · first linked 2020-05-03
  6. Crafting Interpreters
    13 people · 13 mentions · first linked 2017-08-04
  7. Crafting Interpreters
    12 people · 12 mentions · first linked 2019-11-25
  8. /
    6 people · 6 mentions · first linked 2017-02-16
  9. /representing-code.html
    5 people · 6 mentions · first linked 2020-07-09
  10. /introduction.html
    5 people · 5 mentions · first linked 2022-06-22

What Hacker News says?

  1. I'm following the second part of: https://www.craftinginterpreters.com/

    Comment linking /

    on “Ask HN: What's your quarantine side project?”
  2. Submitted Crafting Interpreters is available in print as a story · 623 points

    HN discussion
  3. dgb23 · 2025-06-17Recommends
    I don't work in typical OO codebases, so I wasn't aware of what the visitor pattern even is. But there's an _excellent_ book about building an interpreter (and vm) "crafting interpreters". It has a section where it uses the visitor pattern. https://craftinginterpreters.com/representing-code.html#the-... I remember reading through it and not understanding why it had to be this complicated and then just used a tagged…

    Comment linking /representing-code.html

    on “The Grug Brained Developer (2022)”
  4. Submitted Crafting Interpreters as a story · 607 points

    HN discussion
  5. paulgb · 2019-11-25Recommends
    Link to Book of Shaders: https://thebookofshaders.com/ (And a big +1 on the recommendation) Another piece of technical documentation that stuck out to me recently as remarkably readable (though I haven't finished reading it): https://craftinginterpreters.com/

    Comment linking /

    on “Interactive Linear Algebra”
  6. Submitted Show HN: Crafting Interpreters – A handbook for making programming languages as a story · 423 points

    HN discussion
  7. The best solution I've seen for making sidenotes responsive is to move them into the body text. Examples: http://craftinginterpreters.com/a-map-of-the-territory.html https://www.martigeon.com/textbook-themed-webdesign/ I'm not sure how well this would work for shorter notes though.

    Comment linking /a-map-of-the-territory.html

    on “Ask HN: What is your blog and why should I read it?”
  8. Submitted Show HN: How to write a recursive descent parser as a story · 347 points

    HN discussion
  9. arawde · 2020-02-11Recommends
    On a smiliar note, but with Java and C, "Crafting Interpreters" - https://craftinginterpreters.com/

    Comment linking /

    on “Ask HN: What are some books where the reader learns by building projects?”
  10. Submitted Crafting Interpreters as a story · 274 points

    HN discussion
  11. Author here. Also you can read the whole book online for free: http://craftinginterpreters.com/

    Comment linking /

    on “Advanced Compilers: Self-Guided Online Course”
  12. Submitted Crafting Interpreters: Closures as a story · 269 points

    HN discussion
  13. matt_d · 2020-12-11Recommends
    Compilers books: I'd start with "Engineering a Compiler" by Keith Cooper and Linda Torczon. http://craftinginterpreters.com/ is also a pretty great, programming-oriented intro, which may be good to work through alongside. For more on the analysis & compiler optimization side, "SSA-based Compiler Design" ( http://ssabook.gforge.inria.fr/latest/; GitHub Mirror: https://github.com/pfalcon/ssabook ) is a good follow-up.…

    Comment linking /

    on “Advanced Compilers: Self-Guided Online Course”
  14. Submitted Crafting Interpreters: Superclasses as a story · 253 points

    HN discussion
  15. msangi · 2017-02-16Recommends
    Crafting interpreters. It's still a work in progress, but the chapters published so far are very good. http://www.craftinginterpreters.com

    Comment linking /

    on “Ask HN: What are some books where the reader learns by building one project?”
  16. Submitted A Virtual Machine as a story · 245 points

    HN discussion
  17. What a delightful coincidence! I just posted the next chapter on my in-progress book "Crafting Interpreters" which walks you through implementing an interpreter (well, two actually) from scratch, a chapter at a time: http://www.craftinginterpreters.com/ I really liked "Build Your Own Lisp" too. Fun book. :)

    Comment linking /

    on “Ask HN: What are some books where the reader learns by building one project?”
  18. Submitted Garbage Collection as a story · 230 points

    HN discussion
  19. 1. Peter Norvig's Design of Computer Programs course on Udacity probably singlehandedly changed my perspective on thinking and modeling software solutions to problems. https://www.udacity.com/course/design-of-computer-programs--... 2. Crafting Interpreters by Robert Nystrom is of similar quality. There are a lot of 'oh that's how that works' moments in this book. https://craftinginterpreters.com/ 3. Doyle Brunson's…

    Comment linking /

    on “Ask HN: Do you recall any book or course that made a topic finally click?”
  20. Submitted Crafting Interpreters: Classes and Instances as a story · 224 points

    HN discussion
  21. Stop using labels to define yourself: Loser, Loner. If you do, at least use positive ones: Winner, extrovert and fake it until you make it. But I would never use labels at all. I have won several times, but it came after lots of work, effort and sacrifice, before winning I lost other things. You need to have something in your life that it more important than money or status. A mission that is not about you, but abou…

    Comment linking /

    on “Ask HN: Burnt-out, directionless but want to turn it around”
  22. Submitted Crafting Interpreters Is Complete as a story · 199 points

    HN discussion
  23. The second half of Crafting Interpreters [0] does this—rather than outputting the AST, the bytecode interpreter outputs bytecode directly. Essentially, the process of creating the AST is already very similar to the tree traversal you'll do to unpack it (recursive descent parsing is a traversal of the tree, just in the call stack rather than over a real data structure), so if you don't need the AST you can skip it an…

    Comment linking /

    on “Why SQLite Uses Bytecode”
  24. Submitted Crafting Interpreters as a story · 187 points

    HN discussion
  25. I have to ask about http://craftinginterpreters.com/introduction.html#snippets > In the center, you have the new code being added in this snippet. It may have a few faded out lines above or below to show you where to insert it in the existing code. There is also a little blurb telling you which file and where in the file it goes. If it says “replace _ lines”, there was some previous code between the faded lines that…

    Comment linking /introduction.html

    on “Crafting “Crafting Interpreters””
  26. Submitted Crafting Interpreters – Web Version as a story · 176 points

    HN discussion
  27. kernelmode · 2020-12-21Recommends
    One of the best free resources on making interpreters (with VM, OOP and garbage collection support): https://craftinginterpreters.com

    Comment linking /

    on “More challenging projects every programmer should try”
  28. Submitted Crafting Interpreters: Calls and Functions as a story · 172 points

    HN discussion
  29. No, I've just skimmed over some of its chapters to clarify some concepts. I've mostly learned by reading code and then trying to implement my own type systems. Algorithm W is really quite simple and basic. Another good resource could be Programming Language Zoo http://plzoo.andrej.com/ that covers different evaluation techniques as well. In general, I've been "involved" in PL design for quite some time, so I've no i…

    Comment linking /

    on “Ask HN: What's your favorite elegant/beautiful algorithm?”
  30. Submitted Jumping Back and Forth as a story · 145 points

    HN discussion

Search all of HN for craftinginterpreters.com

Linked by the same people?