Skip to content
  • Simon Peyton Jones's avatar
    e0b8eaf3
    Refactor the constraint solver pipeline · e0b8eaf3
    Simon Peyton Jones authored
    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.
    e0b8eaf3
    Refactor the constraint solver pipeline
    Simon Peyton Jones authored
    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.
Loading