[Python-Dev] Proper tail recursion
Christopher T King
squirrel at WPI.EDU
Thu Jul 15 18:26:19 CEST 2004
On Thu, 15 Jul 2004, Michael Chermside wrote:
> > Anyway there was no agreement yet that Jython couldn't support that
> > _feature_, too, IIRC - I would certainly be happy to have it in
> > Python.
>
> Well, I think I understand Jython well enough to provide the
> assurance: Jython is (intentionally, and for good reason) designed
> to utilize the JVM's call stack. Thus Jython cannot support tail
> call elimination *unless* it is run on a JVM which does tail call
> elimination.
I originally thought I'd need to use gcc's tail call optimization to
achieve my aim (since CPython works the same way), but it turned out a
simple loop would suffice. Unless Jython's implementation is radically
different (i.e. it doesn't pass frame objects to a function that evaluates
them) then it should be able to be implemented similarly.
More information about the Python-Dev
mailing list