forall in constraint
Alan & Kim Zimmerman
alan.zimm at gmail.com
Mon Oct 23 15:06:57 UTC 2017
I am working on the Trees that Grow stuff, and hit a small problem
I have
type family XIB x thing
type family XNewImplicitBndrs x thing
type ForallXImplicitBndrs (c :: * -> Constraint) (x :: *) (thing :: *) =
( c (XIB x thing)
, c (XNewImplicitBndrs x thing)
)
and I want to extend the DataId constraint
type DataId p =
( Data p
, ForallXImplicitBndrs Data p thing
)
But the problem is I do not have `thing` at this point, and to get it in
the code will involve some hs-boot nastiness.
Is there any way to require "forall thing. Data thing" inside the DataId
constraint?
Alan
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/ghc-devs/attachments/20171023/77c963b5/attachment-0001.html>
More information about the ghc-devs
mailing list