[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)