Shameless Plug here.<p>Inspired by Peter Norvig&#x27;s &#x27;How to write a Lisp Interpreter in Python&#x27;, I created three variants of it along the same lines as the OP. The first is a Simple Lisp Interpreter in Javascript [1]. The second separates Syntactic Analysis from Execution [2]. And the third supports non deterministic computing [3].<p>[1] <a href="https:&#x2F;&#x2F;bitbucket.org&#x2F;sainamdar&#x2F;lisp2js" rel="nofollow">https:&#x2F;&#x2F;bitbucket.org&#x2F;sainamdar&#x2F;lisp2js</a><p>[2] <a href="https:&#x2F;&#x2F;bitbucket.org&#x2F;sainamdar&#x2F;lisp2js2" rel="nofollow">https:&#x2F;&#x2F;bitbucket.org&#x2F;sainamdar&#x2F;lisp2js2</a><p>[3] <a href="https:&#x2F;&#x2F;bitbucket.org&#x2F;sainamdar&#x2F;lisp2js2nd" rel="nofollow">https:&#x2F;&#x2F;bitbucket.org&#x2F;sainamdar&#x2F;lisp2js2nd</a>