[Git][ghc/ghc][wip/romes/eqsat-pmc] Add TODO
Rodrigo Mesquita (@alt-romes)
gitlab at gitlab.haskell.org
Thu Jul 6 20:25:27 UTC 2023
Rodrigo Mesquita pushed to branch wip/romes/eqsat-pmc at Glasgow Haskell Compiler / GHC
Commits:
40552c65 by Rodrigo Mesquita at 2023-07-06T21:25:17+01:00
Add TODO
- - - - -
2 changed files:
- + TODO
- compiler/GHC/HsToCore/Pmc/Solver.hs
Changes:
=====================================
TODO
=====================================
@@ -0,0 +1,12 @@
+Oh, we'll really need a "universal" Id that maps to each class-id on each nabla.
+
+* It still feels like the right thing to do is have PhiCt receive ClassIds
+instead of Ids
+ * especially because of mkPmMatchId, which generates new match-ids without requiring them to be Ids.
+ * but the complication is having one representative across all Nabla(s) in Nablas
+
+Do one improvement at a time, and benchmark accordingly.
+Ideas:
+VarId -> Maybe VarId
+Better representation than DeBruijnF, seems wasteful, we only care about
+debruijnization for lambdas in view patterns, which don't happen that often.
=====================================
compiler/GHC/HsToCore/Pmc/Solver.hs
=====================================
@@ -843,7 +843,7 @@ addVarCt nabla at MkNabla{ nabla_tm_st = ts at TmSt{ ts_facts = env } } x y =
-- equate should also update e-graph, basically re-implement "equateUSDFM" in terms of the e-graph, or inline it or so
case equate env x y of
-- Add the constraints we had for x to y
- -- See Note [Joining e-classes PMC] todo mention from joinA
+ -- See Note (TODO) [Joining e-classes PMC] todo mention from joinA
-- Now, here's a really tricky bit (TODO Write note, is it the one above?)
-- Bc the joinA operation is unlawful, and because the makeA operation for
-- expressions is also unlawful (sets the type to ()::(), mostly out of
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/commit/40552c651cc38f8db397171f0b5b573e3c9f178f
--
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/commit/40552c651cc38f8db397171f0b5b573e3c9f178f
You're receiving this email because of your account on gitlab.haskell.org.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/ghc-commits/attachments/20230706/ab1dc5fb/attachment-0001.html>
More information about the ghc-commits
mailing list