Skip to content
This repository has been archived by the owner on Apr 2, 2023. It is now read-only.

Performance tuning #630

Closed
wants to merge 1 commit into from
Closed

Performance tuning #630

wants to merge 1 commit into from

Conversation

jonsterling
Copy link
Contributor

I remove the scope-check that occurs between every refinement step, and insert a few scope-checks where it is needed in order to maintain semantic correctness.

The only place the scope-check is really semantically necessary is when a term comes from the user and not from the refiner. For instance, in the Exact rules.

Elsewhere, having this check would help us catch bugs in the refiner, but generally it is an invariant that the refiner must produce terms that are well-scoped wrt. their context anyway. In light of RedPRL/sml-typed-abts#110, it becomes expensive to wastefully calculate free variables, so I want to minimize calls to varctx in RedPRL.

I am trying out a number of performance tweaks, and may add more things to this PR.

@jonsterling jonsterling self-assigned this Feb 26, 2018
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant