Subject: Re: return-from / defmacro question From: Erik Naggum <erik@naggum.no> Date: 1999/04/21 Newsgroups: comp.lang.lisp Message-ID: <3133702798486404@naggum.no> * Joachim Achtzehnter <joachim@kraut.bc.ca> | Is there a better idiom for generating a list of symbols of equal length | as an existing list? One that doesn't require the 'ignored' hack? * Kent M Pitman <pitman@world.std.com> | I hate this idiom myself. I don't know a good answer. I actually think | it'd be nice if there were a gensym-variant just for this purpose. On | the Lisp Machine, the answer was that the variable IGNORE was magic and | could be duplicated and would never be complained about, so | (mapcar #'(lambda (ignore) (gensym)) ...) | was enough. But I'd like a (mapcar #'gensym1 ...) with a better name, | perhaps, that one could use without the #'lambda. Probably best under | the circumstances is (loop for x in ... collect (gensym)) since at least | it's compact, if not functional. in the standard, we find under MAP-INTO an alluring example that doesn't work (A is a list of four elements prior to this snippet): (map-into a #'gensym) => (#:G9090 #:G9091 #:G9092 #:G9093) somebody clearly thought this was a sufficiently good idea that it _should_ have worked... #:Erik