Right, the point i was making is that not everyone is a 'rockstar' and macros just give you quite a bit more rope to hang yourself with. Awful java/python/whatever is obvious because you can't redefine control flow so easily. With macros you can have something as fundamental as loops be broken.