[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Multiple values not for R4RS
>> From: Morris J. Katz <katz@Polya.Stanford.EDU>
...
>> If it is possible, I would be interested in what about my wording you
>> find troubling. (I realize that often bad feelings about wordings are
>> based on gut level feelings that are hard to explain.) Given some
>> input, I would be happy to work on refining my prose.
Sorry about that. I did not mean to be so gruff in my reply.
>> During the evaluation of a 'with-values' form, the 'generator' thunk
>> is first thawed (evaluated to yield some values) and then the 'receiver' is
>> applied to the values returned by 'generator'. This means that a
>> continuation captured in 'generator' includes the application of
>> 'receiver' to the values returned by 'generator'. It also includes the
>> return from 'with-values' of the value(s) returned by 'receiver'.
The problem I see with this text is that the continuation captured in
'generator' may not be the one your text suggests. Consider
(baby-doe
(lambda ()
(let ((x (call-with-current-continuation
(lambda (c) ...))))
....))
...)
One other point (a small nit I admit), is I prefer the phrase "the
'generator' is called to yield some values" to "the 'generator' is
first thawed (evaluated to yield some values)" but this is what
editors are for.