Subject: Re: return-from / defmacro question
From: Erik Naggum <>
Date: 1999/04/21
Newsgroups: comp.lang.lisp
Message-ID: <>

* Joachim Achtzehnter <>
| 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 <>
| 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...