A Simple VM - So You Want to Build a Language VM

There are very few blogs that hand-hold you through the process of designing a register based Virtual Machine.

In this multi-part tutorial, Fletcher Haynes teaches virtual machine design implementation with the rust programming language.

4 Likes

Very nice!

I want also mention (again) the wonderful

https://craftinginterpreters.com/

and this recent series of a Lisp compiler to x86-64 asm

in particular because it adopts this Incremental Approach to teaching

see also the nanopass framework for reference (wonderful idea, make a compiler with “nano-passes”, i.e. tiny-tiny phases so that the learner can incrementally add phases instead of rewriting parts)

https://nanopass.org/

5 Likes

Thanks so much for these links @evacchi

1 Like