[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

PROG1 as a function

   Date: Wed, 4 Jan 89 16:23:48 EST
   From: Guy Steele <gls@Think.COM>

   Sigh.  Unfortunately, I must beg to differ.  I read the passage on page 194
   as requiring only that the fully evaluated arguments be processed
   left-to-right for contagion purposes.  This is not the same as requiring
   that argument forms in a call be evaluated left-to-right.

   -- Guy

Maybe you're looking at the wrong passage.  This looks pretty
unambiguous to me.  It's also the only place in CLtL that says
argument evaluation is always left-to-right:

"For functions that are mathematically associative (and possibly
commutative), a Common Lisp implementation may process the arguments
in any manner consistent with associative (and possibly commutative)
rearrangement.  This does not affect the order in which the argument
forms are evaluated, of course; that order is always left-to-right, as
in all Common Lisp function calls.  What is left loose is the order in
which the argument values are processed."