自1999年以来,我一直在为编程和乐趣进行编程。我想学习新东西,最近我一直专注于解析,因为我工作的很大一部分是阅读,整合和分析数据。如果开销足够低,我认为我可以用非常简单的特定于领域的语言表达大量的重复性任务。我对这个问题有几个问题。了解关于解析的更多信息
- 我目前的大部分解析代码都没有定义正式的语法。我通常用我的选择语言来破解一些东西,因为这很容易,我知道该怎么做,而且我可以非常快地编写代码。对于我一起工作的其他人来说也很容易维护。与大多数程序员用来编写解析器的黑客相比,定义语法和生成真正的解析器(正如ANTLR或YACC所做的那样)来解析事情有什么优点和缺点?
- 在C++,Perl和Ruby中编写基于语法的解析器的最佳解析器生成工具是什么?我已经看过ANTLR,并没有找到太多有关使用ANTLRv3与C++目标,但否则看起来很有趣。与ANTLR类似,我应该阅读的其他工具是什么?
- 有人想了解更多关于解析的标准书籍和文章是什么?不幸的是编译器课程并不属于我的教育范畴,因此非常欢迎基础材料。我听说过关于Dragon Book的很棒的事情,但还有什么呢?
有趣的是,实际上我会推荐完全相同的东西,但不记得它叫什么。 +1 – 2009-06-27 20:40:37