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.

Mar ’14 01

Cool, so it seems Spirit is also useful for blind musicians.

BMC — Braille Music Compiler

BMC translates between braille music code and visual music notation. It uses Boost.Spirit to parse braille music code into an AST which is later enhanced with various algorithms to resolve ambiguities inherent to braille music code. It can currently convert to LilyPond source format, which can later be translated to a PDF and MIDI representation by LilyPond. BMC aims to become an universal translator between tactile and visual music notation, eventually covering both directions. We are looking for developers with a background in music notation who might be interested to contribute to this unique free software project which aims to bridge the gap between blind and sighted musicians.

preload preload preload