Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Move tail call optimisations to compile.c. #458

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

stedolan
Copy link
Contributor

@stedolan stedolan commented Jul 2, 2014

This might work, needs more testing.

@nicowilliams
Copy link
Contributor

FYI, I tested this, but it doesn't actually TCO. I believe the proximate reason to be that compiled can't have been set where it's checked. I'm not sure how the compiled check would help. We need to check the nesting_level(), unless the idea is that a parent will have been compiled, so if compiled then that must mean the bounder is lexically an ancestor, but that would mean more refactoring of compile() and expand_call_arglist(). Or can we have some other indication via bound_by that the bounder is a lexical ancestor?

# for free to join this conversation on GitHub. Already have an account? # to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants