Subject: Re: SETF : Ambiguous?
From: Erik Naggum <>
Date: Thu, 22 Nov 2001 15:21:16 GMT
Newsgroups: comp.lang.lisp
Message-ID: <>

* (Rene)
| However I didn't see where the order of place and new value was defined in
| the Hyperspec for SETF.

  There is nothing special about the evaluation order for setf.  The
  standard Common Lisp evaluation order is strictly left to right.  Any
  deviation from this is a serious bug.

(let ((x (list 1 2 3)))
  (setf (cdr (progn (format t "First base!~&")
        (progn (format t "Second base!~&")
               (list 3 5)))

  In a conforming Common Lisp implementation, this _must_ print First base!
  and Second base! in that order and return (1 3 5).

  Norway is now run by a priest from the fundamentalist Christian People's
  Party, the fifth largest party representing one eighth of the electorate.
  Carrying a Swiss Army pocket knife in Oslo, Norway, is a criminal offense.