See below for words of wisdom regarding loop and macros. I have seen that mentioned before.
---------- Forwarded message ---------- From: Pascal J. Bourguignon pjb@informatimago.com Date: Sun, Feb 1, 2009 at 9:59 PM Subject: Re: [clisp-list] Is this a bug, or does it violate the standard? To: clisp-list clisp-list@lists.sourceforge.net Cc: Mirko Vukovic mirko.vukovic@gmail.com
On Feb 2, 2009, at 3:20 AM, Mirko Vukovic wrote:
Indeed, the style "looked" bad, having a simple form in the middle of compound forms.. The example was a distillation of a code from a package that was compiling OK on SBCL, but failed on CLISP.
I like the idea of macrolet. And I will remember the (progn ...) trick as well.
Which reminds me to mention that LOOP shouldn't be used in the expansion of macros because of this kind of problems... When writting macros, it's safer to use DO, DO*, DOLIST, DOTIMES or even TAGBODY/GO in the expansion.
-- __Pascal Bourguignon__ http://www.informatimago.com