[Python-Dev] Proper tail recursion (original) (raw)

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