<story><title>Implementing a Virtual Machine in C</title><url>http://www.felixangell.com/virtual-machine-in-c/</url></story><parent_chain></parent_chain><comment><author>TomNomNom</author><text>A good read.&lt;p&gt;One thing I thought of as a little weird is this:&lt;p&gt;&amp;gt; But remember, we aren&amp;#x27;t decoding anything since our instructions are just given to us raw. So that means we only have to worry about fetch, and evaluate!&lt;p&gt;The &amp;#x27;decode&amp;#x27; step is being done by the switch statement, it&amp;#x27;s not being skipped. I think the author may be confusing turning assembly into machine code (i.e. what an assembler does) with decoding an opcode.&lt;p&gt;I built a (very simple) VM in Go live on stage at a local mini-conference last year. I really enjoyed it. There&amp;#x27;s a video of it here: &lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;www.youtube.com&amp;#x2F;watch?v=GjGRhIl0xWs&quot; rel=&quot;nofollow&quot;&gt;https:&amp;#x2F;&amp;#x2F;www.youtube.com&amp;#x2F;watch?v=GjGRhIl0xWs&lt;/a&gt;</text></comment>
<story><title>Implementing a Virtual Machine in C</title><url>http://www.felixangell.com/virtual-machine-in-c/</url></story><parent_chain></parent_chain><comment><author>r4pha</author><text>There&amp;#x27;s something really nice about these minimalistic C projects. You can quickly take a look at the source and immediatelly grasp what&amp;#x27;s happening. A simple and didactic introduction. Super cool.</text></comment>