[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