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

时间:2009-07-28 14:42:21

标签: c# parser-generator

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

7 个答案:

答案 0 :(得分:23)

ANTLR(没什么可说的)

答案 1 :(得分:6)

Gold对于解析器生成器来说是可以的。

答案 2 :(得分:4)

您可能希望查看MinosseCC,即{C}的JavaCC端口。另一种可能性是Spart

答案 3 :(得分:4)

http://irony.codeplex.com/

中找出反讽

PROS:很简单 缺点: - 缺少文件        - 慢慢地

答案 4 :(得分:4)

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

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

答案 5 :(得分:2)

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

答案 6 :(得分:1)

Coco/R(来自SSW - “约翰内斯·开普勒”林茨大学)