什么是好的C#编译器 – 编译器/解析器生成器?

我正在寻找一个解析器生成器,给出一个LL(k)语言的EBNF将给我一个C#解析器并生成EBNF中定义的类型的类。

对解析器生成器来说, 黄金是可以的。

ANTLR (没什么好说的)

您可能希望查看MinosseCC ,它是JavaCC到C#的端口。 另一种可能性是Spart 。

在http://irony.codeplex.com/中找到反讽

PROS:简单的CONS: – 缺少文件 – 慢慢

块上有一个名为LLLPG的新解析器生成器,它支持LL(k)语法和零宽度断言。 它可以在没有运行时库的情况下使用(基类就足够了)。 文档现在相当详细,我使用LLLPG来解析大多数被称为Enhanced C#的C#方言(事实上,它是LLLPG的主要输入语言)。 输入语法不是EBNF(它是一种C#+ ANTLR样式代码的混搭)。

完全披露:我写了。 欢迎提问。

Grammatica支持LL(k)。 http://grammatica.percederberg.net/

Coco / R (来自SSW – “Johannes Kepler”林茨大学)