Boost.Proto is a framework for building Domain Specific Embedded Languages in C++. It provides tools for constructing, type-checking, transforming and executing expression templates.
Proto is a framework for building Domain Specific Embedded Languages in C++. It provides tools for constructing, type-checking, transforming and executing expression templates[2]. More specifically, Proto provides:
- An expression tree data structure.
- A mechanism for giving expressions additional behaviors and members.
- Operator overloads for building the tree from an expression.
- Utilities for defining the grammar to which an expression must conform.
- An extensible mechanism for immediately executing an expression template.
- An extensible set of tree transformations to apply to expression trees.