Parse software messages and transform them into actions. LazyBat has a command line utility which can transform input data, and also a parser generator for C/C++. LazyBat doesn't support recursive parsing, but rather focuses on common parsing jobs.
LLVM is a unique compiler infrastructure designed for the optimization of programs from arbitrary programming languages. Compilation in C and C++ programs is supported using a parser based on GCC 3.4. Backends exist for X86, Sparc, PowerPC and "C".