[Git][ghc/ghc][master] Refactor the constraint solver pipeline

Marge Bot (@marge-bot) gitlab at gitlab.haskell.org
Wed Mar 22 19:30:44 UTC 2023



Marge Bot pushed to branch master at Glasgow Haskell Compiler / GHC


Commits:
e0b8eaf3 by Simon Peyton Jones at 2023-03-22T09:50:13+00:00
Refactor the constraint solver pipeline

The big change is to put the entire type-equality solver into
GHC.Tc.Solver.Equality, rather than scattering it over Canonical
and Interact.  Other changes

* EqCt becomes its own data type, a bit like QCInst.  This is
  great because EqualCtList is then just [EqCt]

* New module GHC.Tc.Solver.Dict has come of the class-contraint
  solver.  In due course it will be all.  One step at a time.

This MR is intended to have zero change in behaviour: it is a
pure refactor.  It opens the way to subsequent tidying up, we
believe.

- - - - -


3 changed files:

- compiler/GHC/Data/Bag.hs
- compiler/GHC/Tc/Solver/Canonical.hs
- + compiler/GHC/Tc/Solver/Dict.hs


The diff was not included because it is too large.


View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/commit/e0b8eaf3fc3d2ebbdcc86610b889930dbe5b4cdb

-- 
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/commit/e0b8eaf3fc3d2ebbdcc86610b889930dbe5b4cdb
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/20230322/959055bd/attachment.html>


More information about the ghc-commits mailing list