[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
tail recursion elimination
Date: Wed, 30 Aug 1995 21:34:01 +0200
From: firstname.lastname@example.org (Rainer Blome)
In-Reply-To: <9508301651.AA23068@obj.Eng.Sun.COM> (Mario.Wolczko@eng.sun.com)
Subject: tail recursion elimination
> While this optimization is invisible in a normal execution [during
> debugging] you will find that a large chunk of your stack is missing.
yes, the self group had written that in some place, i had forgotten.
how about deoptimization then? with tre you can't really do that
dynamically, you might have to rerun a huge amount of code, it might not even
work at all.
so it should be a user- (programmer-) selectable optimization. the
debugger will have to explain that and why the frames are missing.
i was just looking at the implementation of the looping behavior in traits
block - it boils down to the _Restart primitive which is even better
visible than missing stack frame in the debugger.
btw, i tried to understand what the loopExit[Value]Continue methods do, but
failed. they might have sth to do with this discussion, do they? there
seem to be no senders of these messages, why are they there?