I have only ever heard the opposing argument, but I am interested in understanding to its fullest extent how to implement good DSLs with macros.  I understand CL and defmacro; I am just looking for good patterns of use.  Can you point me to any resources, documentation, or examples of this?