1. This post by Steve Yegge seems related. And it's a fun read anyway.
2. I'm wondering if it wouldn't be enough to have a code-generation framework with support for method interception, rather than a full meta-programming system. It would be simpler and, I think, easier to grasp.