Writing VMs and Compilers is fun.