Re: [Scheme-reports] multiple values module John Cowan (24 May 2011 22:14 UTC)
[Scheme-reports] Multiple values Eli Barzilay (25 May 2011 01:25 UTC)
Re: [Scheme-reports] Multiple values John Cowan (25 May 2011 05:05 UTC)
Re: [Scheme-reports] Multiple values Eli Barzilay (25 May 2011 05:59 UTC)
Re: [Scheme-reports] multiple values module Jim Wise (25 May 2011 13:32 UTC)
Re: [Scheme-reports] multiple values module Jim Wise (25 May 2011 13:47 UTC)
Re: [Scheme-reports] multiple values module John Cowan (25 May 2011 15:41 UTC)

Re: [Scheme-reports] multiple values module Jim Wise 25 May 2011 13:19 UTC
John Cowan <cowan@mercury.ccil.org> writes:
> I don't see how that can be.  Multiple values first appeared (AFAIK) in
> Zetalisp, which did not have first-class continuations.  Quoth the 3rd
> (1981) edition of the Chine Nual:
>
>     When a function needs to return more than one result to its caller,
>     multiple values are a cleaner way of doing this than returning
>     a list of the values or setq-ing special variables to the extra
>     values.
>
> I don't know when multiple values were first provided in a Scheme
> implementation, but they do not appear in R4RS, and the Ashley & Dybvig
> paper speaks in 1994 of "the new Scheme multiple values interface".
> If they existed at the time of RRRS (1985) but were not standardized,
> they would still postdate the Zetalisp implementation by some years.

Well, this is clearly not correct.  Multiple value return (in the
context Eli mentions, as a natural context of first-class continuations)
is discussed explicitly in GLS's "LAMBDA: The Ultimate Declarative",
From November of 1976, where it warrants its own appendix (and is
already referred to as the `old' CPS implementation by the time of GLS's
thesis a year later).

--
				Jim Wise
				jwise@draga.com
_______________________________________________
Scheme-reports mailing list
Scheme-reports@scheme-reports.org
http://lists.scheme-reports.org/cgi-bin/mailman/listinfo/scheme-reports