

How to Build a Virtual Machine [video] - sillysaurus3
https://thenewcircle.com/s/post/1617/how_to_build_a_virtual_machine_terrence_parr_video

======
nodesocket
Terence does such a great job explaining and teaching. It is very easy to
forgot how everything we hack actually gets executed. We live in a high level
world which wouldn't be possible without a bunch of smart people who figure
these details out for us.

~~~
avelis
Parr is one of the best CS teachers I know.

------
pjmlp
For those that want to learn about the whole stack "Building a Modern Computer
from First Principles" is quite good.

[http://www.nand2tetris.org/](http://www.nand2tetris.org/)

------
agumonkey
people interested in bytecode should also try to find this book
[http://en.wikipedia.org/wiki/Lisp_in_Small_Pieces](http://en.wikipedia.org/wiki/Lisp_in_Small_Pieces)

The author progressively derive a VM from a naive interpreter (after many
steps)

------
avelis
As USF CS Alum, its always refreshing to see Parr doing what he does best. His
style and approach to learning was thoughtful and enlightening.

One day in class, my assignment source was corrupted and I had to reassemble
it from compiled byte code files. He made an impromptu lecture about it for
the class to learn about. He didnt shame me but wanted everyone to be enriched
from best practices.

------
slipstream-
Recently I was bored enough to code a disassembler for a VM with basically
unknown (to the public) internals, that almost nobody has heard of.

Next I'll probably fork it to remove all the debugging-specific opcodes and
recompile with the official assembler.

------
just2n
For some reason it really bothers me that stack[0] is never used in this
implementation.

~~~
notduncansmith
You forgot to include the footnote.

