The ideal metaprogramming framework reads in code in one of several input notations, analyzes it, and generates output in one of several output notations. The input notations supported are the curly-brace-style and the LISP-parens-style. The analysis handles plain types, parameterized types, and flavored types. The output notations include Java, JavaScript, interpreter and pretty-printer.
The ideal metaprogramming framework is an experiment and a work in progress. Features are missing and not yet implemented; there is currently very little documentation.
To track the developments and be notified when the project will reach a more mature state, subscribe to the announcements mailing list.
If you want to dive into the code anyway, start here. If you have questions, email the developers mailing list.