标签: .net compiler-construction cil
我正在研究一种新的玩具语言,它将静态编译为.NET的IL代码。
副手我可以想到以下实际生成IL,但我愿意接受替代方案:
答案 0 :(得分:2)
还有通用编译器基础结构(AST/Code,Metadata),当然还有令人尊敬的Reflection.Emit。我自己没有任何CCI经验,但this page似乎是IL翻译方面的一个很好的起点。
答案 1 :(得分:1)
您可以使用此编译器生成器编写自己的语言。我用过它。它非常易于使用和理解。
CoCo/R
http://en.wikipedia.org/wiki/Coco/R
答案 2 :(得分:0)
如果MSIL生成本身并不重要,您可以将您的语言“编译”(翻译)为C#,然后使用常规的dotnet编译器。我认为这样做要容易得多,尽管你没有那么多的空间来实现深奥的性能优化等等。翻译成普通的高级语言肯定是我在任何这种新语言情况下的首选,我不关心优化编译速度。