>>7
What do you mean by first-class macros? Do you mean Scheme's hygenic ones? If that's it, then they're less useful to me than CL's ``real'' macros (which work by executing real code and generating the output expression objects). With proper use of gensyms and packages, my macros are just as safe, and a lot more flexible. I've written my share of CL macros and have yet to encounter a case I couldn't handle. Hygenic macros are better in theory, but I prefer CL's macros in practice. It's also possible to build a hygenic macro system on top of CL's low-level one, but nobody ever bothered finishing one (some people did proof-of-concept ones) since most CL coders simply don't need them and prefer CL's ``real'' macros instead.