[Larceny-users] writing values writes the first value only

David Rush kumoyuki at gmail.com
Thu Jun 4 05:58:02 EDT 2009


2009/6/4 Abdulaziz Ghuloum <aghuloum at gmail.com>:
> On Jun 4, 2009, at 10:32 AM, David Rush wrote:
>
>> This is one of those things where
>> the explicit use of a continuation function is both conceptually
>> cleaner and easier to use than the built-in solution
>
> This is self-contradictory.

No it isn't.

> If you believe continuations should take
> a single value only, then you should apply the same principle to your
> continuations too.

An explicit continuation is simply a function called in tail-position.
There's nothing at all wrong with such a function having multiple
arguments. The problem is with Scheme's *hack* involving
CALL-WITH-VALUES, which leads to the OP's confused situation.

> If your continuations take multiple values, then
> why do you feel icky when built-in continuations do the same?

Because they are inconsistent. In point of fact, I feel that all
functions should only take a single argument, whether they be
system-reified continuation functions or user functions. Of course,
some additional machinery would be required for destructuring
anonymous aggregates, but people keep reinventing ML pattern matching
for the Scheme environment anyway...

[with apologies to anyone who thinks there is an argument brewing here]

david rush
-- 
GPG Public key at http://cyber-rush.org/drr/gpg-public-key.txt



More information about the Larceny-users mailing list