diff options
author | Ben Gamari <ben@smart-cactus.org> | 2019-11-10 21:41:33 -0500 |
---|---|---|
committer | Ben Gamari <ben@smart-cactus.org> | 2019-12-02 12:36:39 -0500 |
commit | 9e5e8f04b31506d258d782ceb3ebe1521961eada (patch) | |
tree | 6df81eb96d7f62f88fbb183961827c0b638ea02e /validate | |
parent | 3976b8943ea48bba659672b26074e3b48d590546 (diff) | |
download | haskell-wip/uniqAway.tar.gz |
Simplify uniqAwaywip/uniqAway
This does two things:
* Eliminate all uses of Unique.deriveUnique, which was quite easy to
mis-use and extremely subtle.
* Rename the previous "derived unique" notion to "local unique". This
is possible because the only places where `uniqAway` can be safely
used are those where local uniqueness (with respect to some
InScopeSet) is sufficient.
* Rework the implementation of VarEnv.uniqAway, as discussed in #17462.
This should make the operation significantly more efficient than its
previous iterative implementation..
Metric Decrease:
T9872c
T12227
T9233
T14683
T5030
T12545
hie002
Metric Increase:
T9961
Diffstat (limited to 'validate')
0 files changed, 0 insertions, 0 deletions