I suppose CAAS[1] doesn&#x27;t make much sense outside of the .Net community :). The idea is that you <i>very</i> aggressively break down the compiler into the core constituent parts.<p>A less Microsoft-centric project would be Clang. Clang is quite accessible and despite that it&#x27;s not as loosely coupled as Roslyn (e.g. I don&#x27;t think you can refactor using it), you can still solve some real problems with it (such as autocomplete and static analysis).<p>Basically, CAAS is the front-end equivalent of LLVM. You turn the whole compiler into a very tidy API: following from that it should be significantly simpler to create something such as the interpreter that you are aiming for.<p>[1]: <a href="http:&#x2F;&#x2F;www.infoworld.com&#x2F;article&#x2F;2621132&#x2F;microsoft-net&#x2F;microsoft-s-roslyn--reinventing-the-compiler-as-we-know-it.html" rel="nofollow">http:&#x2F;&#x2F;www.infoworld.com&#x2F;article&#x2F;2621132&#x2F;microsoft-net&#x2F;micro...</a>