A Simple Edit-Time Metaobject Protocol
A metaobject protocol for C++