Thorsten Ball joined the show to talk about creating a programming language, writing an interpreter, why he wrote the book “Writing An Interpreter in Go”, how writing a language/interpreter will help you better understand other programming languages, building a computer from Nand to Tetris, and his thoughts on imposter syndrome.
Join the discussion
Changelog++ members support our work, get closer to the metal, and make the ads disappear. Join today!
Sponsors:
- Linode – Our cloud server of choice. Get one of the fastest, most efficient SSD cloud servers for only $5/mo. Use the code changelog2017 to get 4 months free!
Fastly – Our bandwidth partner. Fastly powers fast, secure, and scalable digital experiences. Move beyond your content delivery network to their powerful edge cloud platform.Backtrace – Reduce your time to resolution. Go beyond stacktraces and logs. Get to the root cause quickly with deep application introspection at your fingertips.StackImpact – StackImpact is all about profiling and monitoring for Go. Laser focus on the performance of your Go applications.Featuring:
- Thorsten Ball – Website, GitHub, X
- Erik St. Martin – GitHub, X
- Carlisia Campos – GitHub, LinkedIn, Bluesky, X
- Brian Ketelsen – GitHub, X
Show Notes:
Writing An Interpreter In Go - In this book we will create a programming language together. We’ll start with 0 lines of code and end up with a fully working interpreter for the Monkey* programming language. Step by step. From tokens to output. All code shown and included. Fully tested.The Elements of Computing Systems: Building a Modern Computer from First Principles From NAND to TetrisGo Advent 2016 blog seriesDamian Gryski is now a /r/golang moderatorTake the 2016 Go User Survey — the goal is to create the best language for developing simple, reliable, scalable software. We are asking you to help by participating in a survey and if applicable, a company questionnaire.From Coursera — Build a Modern Computer from First Principles: From Nand to Tetris (Project-Centered Course)Ken Thompson - Reflections on Trusting TrustSomething missing or broken? PRs welcome!