摘要:Spirit被设计成实用的解析工具。从嵌入到C++中的EBNF形式说明生成正常工作的解析器之能力至少可以极大地缩短开发时间。虽然当我们想要开发一门像C或Pascal那样的计算机语言时,会选用类似YACC或ANTLR这样强大而独立的解析器生成工具;但是当我们希望编写一个极其微小的解析器时,该方法总给人一种“杀鸡焉用牛刀”的感觉。在这种情况下,程序员通常不会将手头的工作当成正式的解析任务,而是用原始的工具(比如scanf)对其进行专门地处理。诚然,像正则表达式程序库(如boost regex)或扫描器(如boost tokenizer)这样的工具是存在的。然而当我们需要编写更为精巧的解析器时,这些工具就显得有些力不从心了。如果仍试图使用这些工具来编写中等复杂程度的解析器,则会导致难于理解和维护的代码。
阅读全文
posted @ 2005-01-16 22:47
浙公网安备 33010602011771号