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

Re: [srfi-11] LET-VALUES wrapup (was: Re: Another vote for more parens)

This page is part of the web mail archives of SRFI 11 from before July 7th, 2015. The new archives for SRFI 11 contain all messages, not just those from before July 7th, 2015.

>>>>> On Wed, 05 Jan 2000 09:15:23 -0500, Lars Thomas Hansen <lth@xxxxxxxxxxx> said:

> You are suggesting that if E returns a single value v, then

> 	(let-values ((I E)) ...)

> would bind I to v, rather than binding I to (v) as I would have it,
> and that if E returns other than one value, the program is in error.
> (The alternative in the latter case is that it means something
> _different_ in that case, e.g. binding I to the list of values, but
> I don't think anyone believes that is a good idea.)

I agree.

> I'm not sure what your change buys us,

One thing it *could* buy is to simply use the existing names: let,
let*, letrec to handle multiple values too.  I don't have an opinion
as to whether this would be a good thing or not.

> but it removes the ability to
> capture all returned values as a list.

For this (I think) rare case,
	(let-values (((. I) E)) ...)
would seem to me to do the trick (although it might break some readers).