[plt-scheme] Re: call/cc, set!, and fluid-let

From: Matthias Felleisen (matthias at ccs.neu.edu)
Date: Tue Jun 14 13:29:18 EDT 2005

On Jun 14, 2005, at 1:10 PM, Doug Orleans wrote:

>   For list-related administrative tasks:
>   http://list.cs.brown.edu/mailman/listinfo/plt-scheme
>
> John Clements writes:
>> On Jun 14, 2005, at 11:50 AM, David Van Horn wrote:
>>> John Clements wrote:
>>>> I claim that
>>>> (let/cc k M0 .... (k N))
>>>> is equivalent to
>>>> (begin M0 ... N)
>>>> if there are no references to k in any of M0 ... or N.
>>>
>>> Almost.  One of these will consume all available memory, the other
>>> will not.
>>>
>>> (let loop () (let/ec k (k (loop))))
>>> (let loop () (begin (loop)))
>>
>> Feh!  Not Safe-for-space.
>
> Is there a reason that the argument of a continuation application is
> not in tail position?  Is it just that you can't (always) tell
> syntactically when a continuation is being applied?  If there were
> special syntax for continuation application, would this work?

Yes. -- Matthias



Posted on the users mailing list.