Macros are for introducing new control primitives, syntax and evaluation models into the language.
Except, I suppose, for perverse macros which expand into shorter code :)
Macros are for introducing new control primitives, syntax and evaluation models into the language.