OpenC++ is a version of C++ with a Metaobject Protocol. In other words, it is a tool of source-code translation for C++. Programmers can easily implement various kinds of translation so that they can define new syntax, new annotation, and new object behavior.
See Also
*Chiba's OpenC++ Page *Wikipedia: OpenC++ *OpenC++ - A C++ Metacompiler and Introspection Library at The Code Project