From: Steven M. Haflich
Subject: handler-case and multiple values
Date: 
Message-ID: <3E9502B7.2090104@alum.mit.edu>
Probably this is a question mostly for Kent.

The ANS/Hyperspec page for handler-bind says this about the return value:

   results---In the normal situation, the values returned are those that
   result from the evaluation of expression; in the exceptional situation
   when control is transferred to a clause, the value of the last form in
   that clause is returned.

Note the distinction between the words "values" and "value".  Now, I
don't doubt that the intention was that an exception clause would be
able to return multiple values (which the "approximately equivalent"
explanation in the non-normative Notes section of the page reinforces)
but the wording casts doubt.

Was this just an unfortunate lapse of terminology?  The terminology
under progn (which applies to many implicit progn forms) is much more
precise.
From: Kent M Pitman
Subject: Re: handler-case and multiple values
Date: 
Message-ID: <sfwsmsqyjk1.fsf@shell01.TheWorld.com>
"Steven M. Haflich" <·················@alum.mit.edu> writes:

> Probably this is a question mostly for Kent.
> 
> The ANS/Hyperspec page for handler-bind says this about the return value:
> 
>    results---In the normal situation, the values returned are those that
>    result from the evaluation of expression; in the exceptional situation
>    when control is transferred to a clause, the value of the last form in
>    that clause is returned.
> 
> Note the distinction between the words "values" and "value".  Now, I
> don't doubt that the intention was that an exception clause would be
> able to return multiple values (which the "approximately equivalent"
> explanation in the non-normative Notes section of the page reinforces)
> but the wording casts doubt.
> 
> Was this just an unfortunate lapse of terminology?  The terminology
> under progn (which applies to many implicit progn forms) is much more
> precise.

As far as I know, all the values should be used.  Sorry about the lousy
wording.  In general, I tried to say 'primary value' when there was 
something masked out, though I can't say with certainty that this was
done everywhere.  Old terminology (like not having multiple values at all)
dies hard; I 'grew up with' Maclisp, which mostly had only a single value
(until the latter days, and then it was just an illusion, mostly).