[HN Gopher] Ask HN: Similar books to "Raytracing in one Weekend"?
       ___________________________________________________________________
        
       Ask HN: Similar books to "Raytracing in one Weekend"?
        
       I really liked the "Raytracing in one Weekend" Series [0], in terms
       of: explaining a complicated concept by programming a toy
       implementation of the thing itself and afterwards one is left with
       more knowledge and something to "show".  Does someone know similar
       series on other subjects than raytracing? I know there is the
       Advent of Code, but that's more like solving a puzzle.  [0]:
       https://raytracing.github.io
        
       Author : augunrik
       Score  : 59 points
       Date   : 2022-12-16 20:05 UTC (2 hours ago)
        
       | agluszak wrote:
       | 500 lines or less and the rest of Architecture of Open Source
       | Applications series http://www.aosabook.org/en/
        
       | iKlsR wrote:
       | Game Physics in One Weekend [0], Ten Minute Physics [1]
       | 
       | [0]: https://gamephysicsweekend.github.io/
       | 
       | [1]: https://matthias-research.github.io/pages/tenMinutePhysics/
        
       | jchook wrote:
       | Check out Crafting Interpreters[0]. You learn about Chomsky
       | formal language hierarchy, constructing context-free grammars,
       | lexing, parsing, error reporting, etc by building your own
       | programming language.
       | 
       | [0]: https://craftinginterpreters.com/
        
       | maximmcnair wrote:
       | The "From Nand to Tetris" course or in book form "The Elements of
       | Computing Systems". This steps through building a computer from
       | scratch. Starting with building logic gates from transistors,
       | through to building a CPU and then writing assembly.
        
       | sasas wrote:
       | This is a fantastic list of projects. From 3D renderers,
       | blockchain protocols, frameworks to emulators.
       | 
       | "Build your own X" - "This repository is a compilation of well-
       | written, step-by-step guides for re-creating our favorite
       | technologies from scratch." [0]
       | 
       | [0] https://github.com/codecrafters-io/build-your-own-x
        
       | tmtvl wrote:
       | _Common Lisp: A Gentle Introduction_ has you code a bunch of neat
       | little projects, I 'm especially fond of the substitution cypher
       | solving program. It reminds me of Covert Action.
        
       | pmat wrote:
       | _Fluid Simulation for Computer Graphics_ by Robert Bridson [0] is
       | one of my favorites. It's a very approachable introduction to
       | fluid mechanics pdes, and how to code wonderful fluid simulations
       | like this HN favorite [1].
       | 
       | [0]: https://www.cs.ubc.ca/~rbridson/fluidsimulation/
       | 
       | [1]: https://paveldogreat.github.io/WebGL-Fluid-Simulation/
        
       | Jemaclus wrote:
       | I would recommend Crafting Interpreters
       | (https://craftinginterpreters.com) or Interpreter Book
       | (https://interpreterbook.com/). Excellent ways to learn how to
       | build an interpreter. You have a functioning interpreter by the
       | end of it, and it's easy enough to extend it into new concepts!
       | I'm using some of the lessons learned from that to build a custom
       | interpreter for a small project I'm working on. It's really fun!
        
         | jesusinsneakers wrote:
         | I've been struggling to decide which one (of the two
         | interpreter books you mentioned) to read. Any specific reason I
         | should read one over the other?
        
           | munificent wrote:
           | I wrote "Crafting Interpreters" and read and very much
           | enjoyed Thorsten's interpreters book. (I haven't gotten to
           | his second one yet.)
           | 
           | They are surprisingly alike. Mine takes you through two
           | complete implementations of the same language: first as a
           | tree-walk interpreter and then as a bytecode compiler. His
           | first book does the former and his second book does the
           | latter.
           | 
           | Both are written in an informal friendly style and focus on
           | working code. If you like one, you'll probably like the
           | latter.
           | 
           | Mine uses Java for the first language and C for the second.
           | Thorsten's books use Go for both. I think mine has more
           | background information, theory, and historical context. His
           | will get you to a working interpreter with less prose to wade
           | through.
           | 
           | I think it's mostly a question of style and preference. I'd
           | dip into the first chapter of each and see which resonates
           | with you.
        
       ___________________________________________________________________
       (page generated 2022-12-16 23:01 UTC)