Writing a virtual machine

I stumbled upon a tutorial to write a VM (virtual machine) some time ago and I thought it would be interesting to try it for myself. The introduction outlines a relevant point: creating a VM introduces more abstraction from the machine, which has a complexity and cognitive cost, borne by the programmer. Yet, writing this simple virtual machine also lets us take a peek into what a computer does under the hood as well as build a useful mental model about machines' internals....

January 26, 2022 · 6 min