[iterate-devel] Iterate broken on ACL 7.0 beta?
Arthur Lemmens
alemmens at xs4all.nl
Wed Sep 29 07:41:31 UTC 2004
Andreas Fuchs wrote:
> I suspect that the COND form that appears so often in the backtrace is
> not macroexpanded correctly (or treated as a special form by allegro7
> again - there is a comment indicating that in the "old" iterate
> distribution).
Yes, cond seems to be treated as a special form by acl 7.0 beta:
(special-operator-p 'cond) returns T. But (macro-function 'cond)
also returns a macro expansion function for cond.
> I'll need to know which values
>
> (macroexpand (cond ((>= value 10) nil (collect (cons key (next i))))) nil)
>
> returns on your allegro 7 installation.
If I wrap a quote around your cond form above (I'm pretty sure that's what
you really meant), I get
(COND ((>= VALUE 10) NIL (COLLECT (CONS KEY (NEXT I)))))
NIL
which confirms your suspicion, I suppose.
> Also, you are welcome to try the patch I suspect will fix the problem:
Thanks, that solves the problem.
Regards,
Arthur
More information about the iterate-devel
mailing list