我最近一直在看Boost.Spirit (Boost1.39中包含的版本),但仅从文档中我就感到相当困惑。我正在寻找的是一个用Boost.Spirit实现的玩具语言的例子--类似于一个小的Javascript或Lua之类的东西,你基本上可以创建一个AST并处理。如果它只支持函数/变量定义和基本运算符,我会很高兴,我只想看看你如何使用Boost.Spirit创建一个普通的抽象语法转换,以及如何实现基本的规则,如标识符,声明等。
到目前为止,我已经尝试了计算器示例,但我不清楚如何使用Spirit实现更大的语法。另一方面,捆绑在一起的mini_c示例看起来已经相当复杂了,而且还没有很好的文档记录。有没有一些简单易懂的Boost.Spirit指南,或者一本书?
发布于 2009-07-14 09:27:54
An introductory article from CP
A JSON parser implemented using Boost.Spirit from CodeProject
Spirit Application Repository
发布于 2011-11-30 21:31:47
Spirit文档包括示例和教程。其中包含了generating an AST for a mini XML-like language的一个示例。还提供了一个非常有用的overview presentation by Joel de Guzman and Hartmut Kaiser。
发布于 2009-10-27 04:02:42
请记住,有一个更新的boost spirit版本,它采用了全新的方法来生成AST。
https://stackoverflow.com/questions/1124232
复制相似问题