EBNF语法解析器模块

时间:2011-12-28 10:09:50

标签: javascript python ruby programming-languages ebnf

你知道一个语法解析器模块(用Ruby,Python,Javascript编写......),给定一个令牌列表和一个EBNF一样的语法(作为一个简单的字符串传递),返回解析树?我发现的最接近的是SimpleParse,这是一个很好的库,但不幸的是它使用了单步解析(没有标记化)。如果可能的话,我宁愿不使用其中实现与语言本身纠缠在一起的库(pyparsingtreetop,...)。

我并不担心lexing / tokenization,因为有很多库可用(甚至编写自己的库也很简单),但实现ENBF解析器并不是一项简单的任务。我已经检查了Python wiki LanguageParsing并测试了其中一些无效(也许我忽略了我正在寻找的那个,有这么多......)

1 个答案:

答案 0 :(得分:0)

在进行了一些搜索后,我决定使用Jison node.js来采用典型的lex / yacc方法。