Skip to content

Refactored BooleanFormula to be in line with TTG

Hassan Al-Awwadi requested to merge wip/ttg-booleanformula into master

This patch furthers (#21592).

This patch moves the definition of BooleanFormula to L.H.S.BooleanFormula, which allows us to cut an edge between L.H.S.Binds and GHC.Data.BooleanFormula (the MinimalSig constructor). More precisely

  • The data type Language.Haskell.Syntax.Binds.Sig has this data constructor
    | MinimalSig (XMinimalSig pass) (LBooleanFormula (LIdP pass))
  • So the data type BooleanFormula should be in L.H.S, not (as currently) in GHC.Data.BooleanFormula.

This MR moves BooleanFormula into L.H.S. GHC.Data.BooleanFormula still exists for GHC specific stuff like pretty printing. BooleanFormula is now also properly parameterized over the pass, and Var has a (LIdP p) instead of any a.

Most other changes are just churn, so that the above changes compile.

Edited by Simon Peyton Jones

Merge request reports