guile-devel
[Top][All Lists]
Advanced

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

Re: A discussion about with-fluids in tail positions


From: Andy Wingo
Subject: Re: A discussion about with-fluids in tail positions
Date: Mon, 21 Jan 2013 21:58:43 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.2 (gnu/linux)

On Mon 31 Dec 2012 13:59, Stefan Israelsson Tampe <address@hidden> writes:

> Going through the compile-rtl stuff I realized that the handling of
> <dynlet>
> in tail callĀ positionĀ is not as good as one could do or?

Yes, Racket guarantees asymptotic tail recursion here but Guile does
not.

> To achieve the first task of cleaning up the with-fluids the most
> simple solution would be to store a pointer to the dynwind stack at
> each call frame and then at a return unwind the dynwind stack all the
> way to that pointer. On the other hand this overhead to handle
> something that is not that common may mean that we cannot go that
> route.

Right.

I would just leave this, if I understand you correctly.  Though, you
might find some inspiration in the call-with-continuation-marks paper
from the Racket folk.

Cheers,

Andy
-- 
http://wingolog.org/



reply via email to

[Prev in Thread] Current Thread [Next in Thread]