A Few Principles of Macro Design.
David Herman and David Van Horn.
In The ACM Workshop on Scheme and Functional Programming, Victoria, British Columbia, Canada, September 2008.

PDF ]

Hygiene facilitates the implementation of reliable macros but does not guarantee it. In this note we review the introspective capabilities of macros, discuss the problems caused by abusing this power, and suggest a few principles for designing well-behaved macros.