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

Re: multiple values proposal

>> I don't remember this discussion - can you remind me what the
>> objections were?  Thanks.  Note that the formal semantics already
>> specifies that X's continuation in (lambda ... X Y) must accept and
>> discard any number of values.  I prefer this behavior and would be
>> surprised if there were any implementations that disallowed it.  (I
>> don't think that 0 values should be treated any differently than 2
>> values.)

After thinking about the issue again, I realize that I misunderstood
Aubrey's original message.  Both Aubrey and Jonathan are correct in
noting that the continuations for commands can accept any number of
values.  I am very surprized that no one noticed this problem with the
text until now.  I suggest adding words about commands into the
text as follows:

   .....  Except for continuations created by the {\tt\mvcall{}} 
   procedure and by commands, all continuations take exactly one
   value; the effect of passing no value or more than one value
   to continuations that were not created by the {\tt\mvcall{}} procedure
   or by a command is unspecified.

I thought Aubrey was talking about whether expressions that give an
unspecified value to their continuation could give no value to it.
Sorry about that Aubrey.

By the way, the proposal requests that the editors add some text
consistent with the proposal, not THE words of the proposal.  There is
supposed to freedom to reword all of this.