
i'm looking at the record type
data TcPlugin = forall t . TcPlugin
{ init :: TcM t
, solve :: t -> [Ct] -> [Ct] -> TcS ([SolveResult], [Ct])
, close :: t -> TcM ()
}
it might be helpful to add a remark that
data Ct = ...
is defined in compiler/typechecker/TcRnTypes.lhs so folks who aren't
already intimately familiar with the constraint solver machinery in GHC can
get some wee hints about where to start digging around if they wanted to
understand the implications of the proposal :)
On Fri, Sep 12, 2014 at 12:41 PM, Adam Gundry
Hi folks,
Those of you at HIW last week might have been subjected to my lightning talk on plugins for the GHC type checker, which should allow us to properly implement nifty features like units of measure or type-level numbers without recompiling GHC. I've written up a wiki page summarising the idea:
https://ghc.haskell.org/trac/ghc/wiki/Plugins/TypeChecker
Feedback is very welcome, particularly if (a) you have an interesting use for this feature or (b) you think this is a terrible idea!
Thanks,
Adam
-- Adam Gundry, Haskell Consultant Well-Typed LLP, http://www.well-typed.com/ _______________________________________________ Glasgow-haskell-users mailing list Glasgow-haskell-users@haskell.org http://www.haskell.org/mailman/listinfo/glasgow-haskell-users