词法分析和解析实用程序

2024-06-16 14:36:18 发布

您现在位置:Python中文网/ 问答频道 /正文

我在寻找不是Flex或Bison的词法分析和解析器生成工具。要求:

  • 解析器是使用上下文无关的LL(*)或GLR语法指定的。我也会考虑钉。在
  • 与可用于脚本和应用程序开发的编程语言紧密集成。语言也应该有方便地与C接口的工具,例如Python、Ruby和Guile。请不要C、Java或Perl。我希望语言是同构的;我希望解析器生成器以相同的语言输出代码。在
  • 良好的文件记录和生产质量。在
  • 开源。免费也是可取的(尽管不是必需的)。在
  • 与Linux发行版或某个开源BSD兼容。我会考虑使用OpenSolaris。在
  • 快速发展比效率更重要。在
  • 适合解析自然语言和形式语言。自然语言句法分析仅限于短而简单的句子,几乎没有歧义。在

虽然我从未使用过ANTLR,但我一直在关注它。对此表示赞赏。请告诉我您最喜欢的满足这些要求的实用程序,以及您推荐它们的原因。在


Tags: 工具脚本语言解析器语法开源java编程语言
3条回答

guile2.0(将在几天内发布)有一个LALR(1) parsing library。在

NL文本往往有很多歧义。如果您想解析自然语言,我认为任何经典的编译器类型解析器生成器(LALR,LL[包括ANTLR])都不会对您有多大帮助,而编译器类型解析器生成器通常根本不处理这些问题。在

GLR解析器处理歧义,可能会有一些用处;bison提供了这个选项。在

有一个现代Packrat解析器列表here。在

相关问题 更多 >