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

Revised multiple values and call/cc.



   Posted-From: The MITRE Corp., Bedford, MA
   X-Alternate-Route: user%node@mbunix.mitre.org
   Posted-Date: Wed, 30 Aug 89 15:39:08 EDT
   From: ramsdell@linus.mitre.org
   Date: Wed, 30 Aug 89 15:39:08 EDT

   Let me revise the proposal by substituting

     Within procedure 'generator', the initial escape procedure returned 
     by call-with-current-continuation is like 'receiver' except that 
     this escape procedure's continuation is the one that was in effect 
     when the evaluation of the with-values expression began (see
     call-with-current-continuation).

   for

     Within procedure 'generator', the initial escape procedure returned
     by call-with-current-continuation is 'receiver'.

I find the new proposed wording somewhat opaque and have therefore
tried my hand at prose as well. 

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'.
-------------------------------------------------------------------------------
Morry Katz
katz@polya.stanford.edu
-------------------------------------------------------------------------------