Possibly Pythonic Tail Call Optimization (TCO/TRE)
Marko Rauhamaa
marko at pacujo.net
Tue Jul 14 04:33:56 EDT 2015
Ian Kelly <ian.g.kelly at gmail.com>:
> On Mon, Jul 13, 2015 at 11:57 PM, Marko Rauhamaa <marko at pacujo.net> wrote:
>> How about "return"?
>
> I think you miss my point entirely. "return" doesn't mean tail-call
> optimize;
Why not?
> it just means to return the result.
Same difference.
> This is what led to the confusion responsible for the bug that Chris
> pointed out in the first place. With a keyword that explicitly means
> "perform tail-call optimization *and* return",
That could well be the explicit definition of the "return" statement in
Python without changing the behavior of any working Python program
today.
> the association of the keyword with the optimization is much clearer,
> and the programmer is much less likely to mistakenly omit it.
The programmer shouldn't be controlling tail call optimizations.
Marko
More information about the Python-list
mailing list