与C#不同的其他语言的类似反讽解析器的软件?

时间:2011-03-24 03:09:08

标签: parsing irony

是否有任何程序执行Irony .NET language implementation kit所做的事情,但对于其他编程语言?

3 个答案:

答案 0 :(得分:1)

Irony的语法用C#编码,带有符号的BNF,但当然你可以用它来解析你自己的语言或其他语言。

如果您正在寻找一个没有用C#编码的语法的解析器/生成器,请尝试ANTLR之类的内容。使用ANTLR,您可以在语言描述文件中单独定义语法。

答案 1 :(得分:1)

有几种其他语言的解析器组合库,仅举几例:

答案 2 :(得分:0)

Python有PLY,它是Lex / Yacc的包装。

一旦你绕过他们想要你如何使用它并且你想出如何浏览这些吝啬的文档,这很容易使用。 PLY比Irony有更好的文档,但是条形设置得很低。

我从PLY开始,但我发现Irony是一个更令人愉快的框架,因为:

  • Irony支持简单的EBNF语法规则(MakeStarRule等),而在PLY中完成同样的事情是可行的,但很麻烦。
  • 这两款工具都有不错的开箱即用调试工具,但Irony在这方面略有优势,因为它有一个很好的GUI来浏览解析规则,转移 - 减少错误等。

祝所有人开始他们的Lex / Yacc旅程,祝你好运!