我查看了以下软件工具:
ANTLR 似乎是最直接的,但是缺乏它的文档。Ragel 看起来也可以,但我没有看到将BNF转换为其语法的简单方法。
还有哪些其他工具可以接受 BNF 输入并生成相应的、Unicode 友好的、跨平台的、独立的、C++ 解析器?
非常感谢所有建议。
编辑:将 Objective-C 要求更改为 C++。
提升精神用户列表非常活跃,作者的回答很快。
TDParseKit!(最具体地说,这个关于使用 BNF 语法生成 Objective-C 解析器的页面)
你看过QLALR吗?这是一个来自 QtDF 的创意星期五项目。我没有亲自尝试过,但巨魔似乎对他们解决问题的方法很务实,所以我想这也是。
你可以试试 GOLD 解析器!它是一个很好的解析和生成工具。使用简单的 UI,您需要做的就是提供一个有效的语法文件并为您的输出代码选择您喜欢的编程语言。