Interpreters Learning how interpreters work by working through Crafting Interpreters. The book has two parts: Java-based AST-walking interpreter C-based bytecode virtual machine