Fundep question
Simon Peyton Jones
simonpj at microsoft.com
Fri Jul 31 15:29:55 UTC 2015
you need "liberal coverage checking", so UndecidableInstances. Are you doing that?
| -----Original Message-----
| From: ghc-devs [mailto:ghc-devs-bounces at haskell.org] On Behalf Of
| Richard Eisenberg
| Sent: 31 July 2015 16:10
| To: Gabor Greif
| Cc: ghc-devs
| Subject: Re: Fundep question
|
| Let's rewrite with explicit kind variables, noting that b is also
| poly-kinded:
|
| class Dep k k2 (a :: k) (b :: k2) | a -> b k2
| -- if a determines b, it surely determines k2
|
| instance Dep k * x y => Dep (Maybe k) * (Just x) (Maybe y)
|
| Actually, even with the kinds explicit, it still looks valid to me.
| Post a bug report?
|
| Richard
|
| On Jul 31, 2015, at 9:54 AM, Gabor Greif <ggreif at gmail.com> wrote:
|
| > Hi all,
| >
| > say I want to instantiate
| >
| > class Dep (a :: k) b | a -> b
| >
| > as
| >
| > instance Dep x y => Dep (Just x) (Maybe y)
| >
| > Is this supposed to work? I get "The coverage condition fails"
| errors.
| >
| > For simple cases like
| >
| > instance Dep True Bool
| >
| > etc. it seems to work fine.
| >
| > Thanks and cheers,
| >
| > Gabor
| > _______________________________________________
| > ghc-devs mailing list
| > ghc-devs at haskell.org
| > http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs
|
| _______________________________________________
| ghc-devs mailing list
| ghc-devs at haskell.org
| http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs
More information about the ghc-devs
mailing list