How to make a simple virtual machine


Details
Our own Christian Stigen Larsen will give a presentation on how (and why!) to make simple virtual machines.
----
Virtual machines are everywhere! While they power most modern programming languages, they also show up in unexpected places like: Network packet filters, regular expression engines and all your big name games.
A virtual machine is a piece of software that executes really simple instructions, just like a CPU. Steve Jobs said it best: "It takes these really simple-minded instructions – 'Go fetch a number, add it to this one, put the result there' – but if you execute them at a rate of, say, 1 million per second, the results appear to be magic."
In this talk we'll uncover some of their mystery by building a dead simple machine, from scratch, using Python. You'll get a glimpse of what happens under the hood of VMs like the JVM and CLR, and you'll learn enough so that you can go home and build your own VM!
Near the end of the talk we'll also briefly touch on subjects like bytecode optimization, JIT-compilation and discuss usage applications.
----
Here's a link to the flyer. (https://docs.google.com/drawings/d/1UMm2Qkz-SPp-LrqxD40Hef14WBvjt-NdJn8yR8bpGnY/edit) Get the word out by posting this where other developers might see it!

How to make a simple virtual machine