Aurelia is a framework for program transformation based on a C++0x development environment. It provides libraries and tools for term rewriting, strategic programming, AST type generation, parsing. It is planned to provide in the future, generic pretty-printing tools, and attribute grammar evaluation, and concrete syntax.

It is based on the C++0x standard library and does not depend on any other libraries.

The documentation is not ready yet. Directory "demos" provides a good idea of what the library can provide.


  • A C++0x compiler with a C++0x standard library. The requirements will be checked by the configure script.

Build and install

The installation uses the standard GNU procedure. For more information, please refer to INSTALL.

You can overide CXX to choose the compiler. You can also set CPPFLAGS to choose an alternative standard library.

For example:

./configure CXX=icpc CPPFLAGS=-I/usr/include/stlport


A copy of the GNU General Public License version 3 is in the file COPYING.

Copyright (C) 2010 Valentin David Copyright (C) 2010 University of Bergen

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see <>.