[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.



>>>>> "Lars" == Lars Thomas Hansen <lth@xxxxxxxxxxx> writes:

Lars> Mike writes:

>> Well, I still think LET-VALUES should reflect the (VALUES x) = x
>> duality, but I think the change you suggest is better than no change
>> at all.

Lars> Sorry for not adding that bit to the list of issues.  Let me sum up:

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

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

Lars> would bind I to v, rather than binding I to (v) as I would have it, and
Lars> that if E returns other than one value, the program is in error.

Right.

Lars> I'm not sure what your change buys us, but it removes the ability to
Lars> capture all returned values as a list.

Also right.  I've often had LETs (and, even more often, LET*s) where
some of the RHS return multiple values, and some do not.  The
extra parentheses are not very esthetically pleasing.  I admit you'll
lose functionality, but it's functionality I've never ever wanted
programming --- and I've used MzScheme's LET-VALUES and LET*-VALUES *a
lot*.

So both are reasonable choices, but my suggestion would please me more
...

-- 
Cheers =8-} Mike
Friede, Völkerverständigung und überhaupt blabla