我正在考虑编写一个小的C#编译器.
我一直在追求的一个想法是写一个C#语法的一个子集,对于ANTLR来说要高达2.0.然后,使用它来定位LLVM并为C#编写本机代码编译器?
这个想法是否有意义呢?有没有办法继续打电话给BCL?
我知道有CCI (Common Compiler Infrastructure)这将帮助我简单地生成.NET可执行文件.但是,如果上面我说的话可以,我很好奇
解决方法
Mono already can be used with a LLVM backend.
More details in the Mono docs.
但是请查看限制部分.
更新:从Mono 2.8起,LLVM后端已经稳定.见Mono 2.8 release notes.