[Ecls-list] patch for additional clhs compliance

Geo Carncross geocar at gmail.com
Tue Apr 1 17:44:03 UTC 2008

On Tue, Apr 1, 2008 at 1:12 PM, Eric Marsden <eric.marsden at free.fr> wrote:
> >>>>> "jjg" == Juan Jose Garcia-Ripoll <jjgarcia at users.sourceforge.net> writes:
>   gg> prog2 evaluates first-form, then second-form, and then forms, yielding
>   gg> as its only value the primary value yielded by first-form.
>   jjg> This must be a typo. If you look at the notes at the bottom of the
>   jjg> specification (http://www.lisp.org/HyperSpec/Body/mac_prog1cm_prog2.html)
>   jjg> you will notice this:
>   jjg>
>   jjg> (prog1 form*) ==  (values (multiple-value-prog1 form*))
>   jjg> (prog2 form1 form*) ==  (let () form1 (prog1 form*))
>   jjg>
>   jjg> Hence, PROG2 returns the primary value of the _second_ form.
>   Indeed, this is a known "bug" in CLtS. See
>      http://www.cliki.net/Issue%20PROG2-RETURN-VALUE

Well *I* certainly thought it was funny, and IRC agreed with me late
last night :)

More information about the ecl-devel mailing list