<story><title>Writing An Interpreter In Go (2016)</title><url>https://interpreterbook.com/</url></story><parent_chain></parent_chain><comment><author>stevekemp</author><text>I had a lot of fun with this book, after belatedly buying it.   I&amp;#x27;ve read a couple of similar online-books in the past, but this was the first one I worked my way through completely.&lt;p&gt;As a result I later had a lot of fun writing a simple compiler for a reverse-polish calculator, to generate AMD64 assembly language &lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;github.com&amp;#x2F;skx&amp;#x2F;math-compiler&amp;#x2F;&quot; rel=&quot;nofollow&quot;&gt;https:&amp;#x2F;&amp;#x2F;github.com&amp;#x2F;skx&amp;#x2F;math-compiler&amp;#x2F;&lt;/a&gt; , wrote a simple BASIC intepreter &lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;github.com&amp;#x2F;skx&amp;#x2F;gobasic&quot; rel=&quot;nofollow&quot;&gt;https:&amp;#x2F;&amp;#x2F;github.com&amp;#x2F;skx&amp;#x2F;gobasic&lt;/a&gt; , and put together a couple of DSL-projects which followed a similar approach.&lt;p&gt;All in all I&amp;#x27;d recommend reading it, and definitely working through the code.  Once you&amp;#x27;re done you can continue to experiment - adding support for regular expressions, a standard-library, etc, etc.&lt;p&gt;My version of the language is here and contains a fair number of improvements&amp;#x2F;additions.  After covering the core in such detail it wasn&amp;#x27;t hard to extend further, even if that was primarily for fun, rather than for a real purpose:&lt;p&gt;&lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;github.com&amp;#x2F;skx&amp;#x2F;monkey&amp;#x2F;&quot; rel=&quot;nofollow&quot;&gt;https:&amp;#x2F;&amp;#x2F;github.com&amp;#x2F;skx&amp;#x2F;monkey&amp;#x2F;&lt;/a&gt;</text></comment>
<story><title>Writing An Interpreter In Go (2016)</title><url>https://interpreterbook.com/</url></story><parent_chain></parent_chain><comment><author>schnitzelstoat</author><text>Can anyone recommend other books similar to this one?&lt;p&gt;Having done the Nand2Tetris course and started the Ray Tracer Challenge book I find I really like these books that guide you through a pretty complex project.&lt;p&gt;It helps you learn by doing while at the same time preventing you from falling into bad practices or getting overwhelmed.</text></comment>