Closed sellout closed 10 months ago
I started implementing this, and was progressing nicely with fairly minor changes (the GHC API module names have changed, a few functions now take an extra arg, ...), but I ran into an issue that might be more significant.
In https://gitlab.haskell.org/ghc/ghc/-/commit/0de03cd78729dc58a846c64b645e71057ec5d24e, RuleFun was changed from taking DynFlags to a more restricted RuleOpts, so ConCat.Satisfy.Plugin.satisfy no longer has access to the full DynFlags structure.
RuleFun
DynFlags
RuleOpts
ConCat.Satisfy.Plugin.satisfy
I think the only place that concat seriously uses the DynFlags is in ConCat.Simplify, but I'm not sure how to work around the lack of it there.
ConCat.Simplify
This was all done in February 2023.
I started implementing this, and was progressing nicely with fairly minor changes (the GHC API module names have changed, a few functions now take an extra arg, ...), but I ran into an issue that might be more significant.
In https://gitlab.haskell.org/ghc/ghc/-/commit/0de03cd78729dc58a846c64b645e71057ec5d24e,
RuleFun
was changed from takingDynFlags
to a more restrictedRuleOpts
, soConCat.Satisfy.Plugin.satisfy
no longer has access to the fullDynFlags
structure.I think the only place that concat seriously uses the
DynFlags
is inConCat.Simplify
, but I'm not sure how to work around the lack of it there.