C# · 12月 26, 2021

写一个针对LLVM的C#编译器是否有意义?

我正在考虑编写一个小的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.