我在寻找不是Flex或Bison的词法分析和解析器生成工具。要求:
- 解析器是使用上下文无关的LL(*)或GLR语法指定的。我也会考虑钉。在
- 与可用于脚本和应用程序开发的编程语言紧密集成。语言也应该有方便地与C接口的工具,例如Python、Ruby和Guile。请不要C、Java或Perl。我希望语言是同构的;我希望解析器生成器以相同的语言输出代码。在
- 良好的文件记录和生产质量。在
- 开源。免费也是可取的(尽管不是必需的)。在
- 与Linux发行版或某个开源BSD兼容。我会考虑使用OpenSolaris。在
- 快速发展比效率更重要。在
- 适合解析自然语言和形式语言。自然语言句法分析仅限于短而简单的句子,几乎没有歧义。在
虽然我从未使用过ANTLR,但我一直在关注它。对此表示赞赏。请告诉我您最喜欢的满足这些要求的实用程序,以及您推荐它们的原因。在
Tags:
guile2.0(将在几天内发布)有一个LALR(1) parsing library。在
NL文本往往有很多歧义。如果您想解析自然语言,我认为任何经典的编译器类型解析器生成器(LALR,LL[包括ANTLR])都不会对您有多大帮助,而编译器类型解析器生成器通常根本不处理这些问题。在
GLR解析器处理歧义,可能会有一些用处;bison提供了这个选项。在
有一个现代Packrat解析器列表here。在
相关问题 更多 >
编程相关推荐