-
Notifications
You must be signed in to change notification settings - Fork 39
Open
Description
TODO
- Duplication of definitions
- Float out lambda binders
Missing Implementation
-
restParamand multiple parameter lists - Deforestation related to functions and values inside classes/modules
-
Matchblocks with non-Value.Refscrutinees (likeMatch(Select(…), …)))
I put this as a missing implementation here because I am not sure how to handle selections inside branches related to non-Value.Refscrutinees — but maybe this is not strictly a “missing implementation” because it seems that although the definition of Match says that thescrutcan be aPath, the scrut currently always seems to be compiled to aValue.Ref.
More todos
- Merging of duplicated consumers
- After fusion, some duplicated consumers may have identical bodies, they can be merged
- Before fusion, duplication of consumers may lead to loss of fusion opportunities
- Reification of recursive strategies
Ad-hoc things to generalize
- Remove the special-casing of the "force" and "lazy" and use annotations instead
- Don't special-case NofibPreluse – instead, allow listing a set of file to optimize with
Metadata
Metadata
Assignees
Labels
No labels