前段时间,我正在研究编译器,我曾经System.Reflection
从我的 AST 生成代码 (IL)。现在,我对另一个我想开发的编译器有了一个想法(这将是另一个宠物项目,不会在生产代码中使用任何东西,至少现在不会)。
如您所知,与生产代码相比,宠物项目有一个很大的优势:您可以尝试并失败。因此,我决定尝试使用Microsoft 的 CCI编写编译器。
我发现的唯一好的参考是基本语言的示例编译器(这是 codeplex 上 CCI 的一部分),但是,我更希望有一些其他资源,更像是教程、书籍、文章,我可以在其中获得除了学习代码之外的更多信息(这并不总是学习某些东西的最佳方法,因为您看到了解决方案,但您不知道您有哪些替代方案,或者此类代码为何有效)。
那么:在编写编译器和处理 AST 的背景下,您有任何关于 CCI 的资源(教程、书籍)吗?