How about we implement some way to peer into coderefs? Maybe just on the top level, with attributes, or maybe a syntax tree (probably not).
Because here, what both arguments (in the discussion) are missing, is the ability to look at their arguments' (the uh, ones you pass in) internal structure and make decisions upon it. Like the pow(x, constant) example. I'll leave it up to the macro innovator(s) to figure out how to do that. But if you can't, you've lost one of the large powers of macros. Luke