Subject: Re: An idea for making define-macro more convenient to use
From: rpw3@rpw3.org (Rob Warnock)
Date: Sun, 27 Feb 2005 05:05:25 -0600
Newsgroups: comp.lang.lisp
Message-ID: <pNydnV169-boNLzfRVn-tQ@speakeasy.net>
Kent M Pitman  <pitman@nhplace.com> wrote:
+---------------
| Symbolics Lisp had ONCE-ONLY, which was cool but didn't trust the compiler
| to do the right thing on its own, so was unnecessarily complicated in 
| design and implementation; LispWorks has both REBINDING and WITH-UNIQUE-NAMES
| (a variant of ONCE-ONLY), which work in a quite natural and general way
| to accomplish the kind of thing you want for CL.
+---------------

CMUCL has an EXT:ONCE-ONLY which may do the same thing. The docstring:

  "Once-Only ({(Var Value-Expression)}*) Form*
  Create a Let* which evaluates each Value-Expression, binding a temporary
  variable to the result, and wrapping the Let* around the result of the
  evaluation of Body.  Within the body, each Var is bound to the corresponding
  temporary variable."


-Rob

-----
Rob Warnock			<rpw3@rpw3.org>
627 26th Avenue			<URL:http://rpw3.org/>
San Mateo, CA 94403		(650)572-2607