我正在开发一种主要基于 C99 标准的小型编程语言,并且我已经用 java 编写了一个相当不错的词法分析器,现在我正在寻找从语法生成一个 Java Parser。我知道有Bison,但这似乎只生成 C 代码。我正在寻找一个应用程序,它允许我输入我的语法并在 java 代码中创建一个完整的解析器类。阅读有关相关主题的其他 SO 帖子,我找到了 ANTLR,但我想知道 SO 中是否有人知道更好的工具?
谢谢!
我正在开发一种主要基于 C99 标准的小型编程语言,并且我已经用 java 编写了一个相当不错的词法分析器,现在我正在寻找从语法生成一个 Java Parser。我知道有Bison,但这似乎只生成 C 代码。我正在寻找一个应用程序,它允许我输入我的语法并在 java 代码中创建一个完整的解析器类。阅读有关相关主题的其他 SO 帖子,我找到了 ANTLR,但我想知道 SO 中是否有人知道更好的工具?
谢谢!
BNFC给我留下了深刻的印象,它能够在 Java 以及 C、C++、C#、F#、Haskell 和 OCaml 中生成解析器。
http://jflex.de上的 JFlex 主页指出了在哪里可以找到可以针对 Java 的类似 Bison 的工具:
http://byaccj.sourceforge.net/ http://www2.cs.tum.edu/projects/cup/ http://www.antlr.org/