[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Tail Recursion
Date: Wed, 22 Feb 89 17:51 EST
From: Reti@RIVERSIDE.SCRC.SYMBOLICS.COM
Two that come to mind immediately are unwind-protects
and stack-consed-presentation cleanups.
Stack-cons and unwind-protect merely forbid tail-recursive folding, just
like any other piece of recursive-but-not-tail-recursive code.
However it would probably break encapsulations (e.g. advise). How could
you tell an encapsulated tail-recursive function not to be
tail-recursive any more?
Also, how do you set the trap-on-exit flag on one (but not several)
of these tail-recursively called frames?
That's what "makes debugging hard" means. You don't see old stack
frames, hence no args or locals and no frame to mark.