Welcome to Spirit
Spirit is a set of C++ libraries for parsing and output generation
implemented as Domain Specific Embedded Languages (DSEL) using
Expression templates and Template Meta-Programming. The Spirit
libraries enable a target grammar to be written exclusively in C++.
Inline grammar specifications can mix freely with other C++ code and,
thanks to the generative power of C++ templates, are immediately executable.
Spirit is part of Boost Libraries, a
peer-reviewed, open collaborative development effort.
May ’15 16
C++ Now 2015. Today is the official release of Spirit X3, aka Spirit 3.0.0. X3 will be in beta, coexisting side by side with Qi, Karma, Lex and Classic.
If you are a Qi user, the best place to start are the examples, especially rexpr and x3 fun.
Remember to use a compiler with c++14 capabilities:
- clang 3.4 or greater
- gcc 4.9 or greater
Docs: X3 Documentation
Slides: Using X3 Slides
Spirit X3 Source
Use the develop branch.
Zip of develop: develop.zip
You will find boilerplate (getting started) projects in: example/x3/rexpr
There are two directories.
- rexpr_min – contains a single file to start things off.
- rexpr_full – contains a structure similar to the one in the presentation complete with tests.