reverse is a preprocessor that turns various programming languages like C,C++,java into powerful templating languages. Reverse comes under the LGPL (Lesser Gnu Public License). For details about this license see http://www.gnu.org/licenses/licenses.html#LGPL
This is the first alpha release of reverse. It is not yet considered stable and may contain many bugs.
This version of reverse comes with two adaptors. They both accept a (SL,EL) combination of (plaintext,c++). They only differ in how the SL is translated.
In normal operating mode, file processing starts in SL context. But for many adaptors its more handy to let file processing start in EL context. For example, if you write a C++ file and only want to embed some output intensive code, you would probably want the default context of the file to be c++ (EL), rather then plaintext (SL). This is the idea of inverse operating mode. In inverse mode file processing starts in EL context, and you may embed SL blocks.
Hints are blocks of text that are passed to the adaptor to configure it. Hints can be passed by a special context embedded into the source file, or via the command line.
The two plaintext,c++ modes are able of generating #line preprocessor directives. These directives are interpreted by the c++ compiler with the effect, that all warning messages related to the generated code, will be reported in the original file rather than in the intermediate c++ source file generated by reverse.
The kate syntax highlighting generator is a tool to generate simple syntax highlieghting files for the kate text editor (http://kate.kde.org). Currently only very basic syntax highlighting is supported.
Once reverse is build, it requires no external software beyond the standard c++ runtime and system libraries. But some external software is required to build reverse.
Currently, building reverse has only been tested on linux systems
The GNU C Compiler version 2.x or 3.x or higher with c++ support and the standard template library (STL) is required to translate the reverse sources. gcc should be installed by default on any linux system.
The GNU awk interpreter is required to do some build-tasks. Unfortunately, there are two wide-spread awk versions, gawk and mawk. The build process will only run correctly with gawk. Either gawk or mawk should be installed by default in any standard linux distribution.
supp++ contains some c++ support routines. Just type make in the supp++ directory. On a standard linux installation you should not encounter any problems (I hope, only tested on x86 platforms)
To compile the main program and the syntax highlighting generation tool, you must use the Makefile in the reverse directory. This step is also only tested on x86 linux platforms.