Looks perfect. It'll take some time to put the pieces together, but I think it'll work. Thanks, Richard! -- Conal
On Sun, May 25, 2014 at 11:42 AM, Richard Eisenberg <[email protected]>wrote: > Does FamInstEnv.normaliseType work for you? FamInstEnv is in the types/ > directory. FamInst.tcGetFamInstEnvs may also be helpful. FamInst is in the > typecheck/ directory. > > Richard > > On May 25, 2014, at 12:42 PM, Conal Elliott <[email protected]> wrote: > > > I'm working on a GHC plugin in which I need to programmatically > construct a coercion for an associated type, given the type function name > and the type argument. For instance, I have the following class: > > > > > class Encodable a where > > > type Encode a > > > encode :: a -> Encode a > > > decode :: Encode a -> a > > > > along with a type instance, say `Int -> Bool`. In a GHC plugin, how can > I apply a type function to an argument type to get back the resulting type > and the associated coercion? (Given the latter, I think the former comes > from `coercionKind`). > > > > -- Conal > > _______________________________________________ > > ghc-devs mailing list > > [email protected] > > http://www.haskell.org/mailman/listinfo/ghc-devs > >
_______________________________________________ ghc-devs mailing list [email protected] http://www.haskell.org/mailman/listinfo/ghc-devs
