~/talk

Higher order Patterns in Rewrite Rules

links:none on file
slides:none on file

Adds actual higher-order pattern matching to GHC’s rewrite-rule matcher by changing Rules.hs match to recognize template variables applied to distinct local binders, build a RuleSubstitution that inserts lambdas via mkCoreLams, and avoid full beta expansion of the target. Prototype compiles, lands as a merge request after a GHC proposal, and is slated for GHC 9.8. Basic implementation takes about two days; polishing spec and tests takes much longer; enables concatMap fusion work.

AI-written summary · about

  1. 0:00Jaro's introduction
  2. 0:50Rewrite rules in Haskell
  3. 2:47Motivation for extending rules
  4. 6:14Contributing to GHC
  5. 9:37GHC codebase dive
  6. 14:07Beta expansion in matching
  7. 16:02Feedback and GHC proposal
  8. 17:28Writing GHC proposal
  9. 18:15Refining merge request
  10. 20:01Future work and conclusion
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.