I’ve written a small tool to warm-up HTTP caches, e.g. services like nginx.
One Go feature which I’m using regularly is cross-compiling Go code to other platforms (usually from macOS to linux-amd64).
In Go, this is a built-in feature that “just works”. The following command produces a statically linked ELF binary which can simply be copied and run on a Linux machine:
Last month, Thorsten Ball released his first book: Writing An Interpreter In Go. It’s an awesome book that teaches its readers how to write their own programming language, step by step. It comes bundled with the complete Go code, including tests.
While reading it, I was looking for a challenge. I’m a huge fan of Rust, a safe systems programming language by Mozilla, so I thought it might be a good exercise to port the Go implementation of the programming language “Monkey” to Rust.
Here’s an example of what Monkey code looks like (you can find more examples here):