我对实现解析器的了解有点生疏。
我不了解该地区目前的研究状况,可能需要一些有关最近进展及其对绩效影响的链接。
关于编写解析器的一般资源也是受欢迎的(教程,指南等),因为我在大学学到的很多东西我已经忘记了:)
我有龙书,但就是这样。
是否有人对ANTLR等解析器生成器及其性能有所贡献? (即与其他发电机进行比较)
编辑我的主要目标是N3表示法中的RDF / OWL / SKOS。
答案 0 :(得分:7)
提及龙书和antlr意味着你已经回答了自己的问题。
如果您正在寻找其他解析器生成器,您还可以查看boost :: spirit(http://spirit.sourceforge.net/)。
根据您要实现的目标,您可能还需要考虑使用DSL,您可以自己解析或使用boo,ruby,python等脚本语言编写...
答案 1 :(得分:0)
答案 2 :(得分:0)
您可能还想看看SableCC,另一个解析器生成器“为构建编译器生成功能齐全的面向对象框架”。
他们是关于基本用途here和here的一些文档。既然您询问了研究论文,SableCC's main developper's master thesis(1998)可用,并对SableCC的优势进行了更多解释。
虽然当前的稳定版本是3.2,但是开发分支v4是一个完整的重写,应该实现解析器生成器的新功能。
答案 3 :(得分:0)
如果您想为复杂语言构建自定义分析器, 考虑我们的DMS软件再造工具包。 见http://www.semanticdesigns.com/Products/DMS/DMSToolkit.html
这提供了非常强大的解析技术,使您可以“轻松”定义您的语言 (特别是与大多数解析器生成器相比)。
传统的解析器生成器可能有所帮助 解析,但他们在困难的部分提供零帮助 进程,在您解析代码后发生。 DMS提供了大量的机器来支持分析和转换 解析后的代码。