book programming language Crafting Interpreters Written by Robert Nystrom GitHub repo Chapters Chapter 1 - Introduction Chapter 2 - A Map of the Territory Chapter 3 - The Lox Language Chapter 4 - Scanning