This has been reported: https://ghc.haskell.org/trac/ghc/ticket/8338

But it's really not clear what the solution is!

Richard

On Aug 11, 2014, at 9:27 PM, Iavor Diatchki <iavor.diatc...@gmail.com> wrote:

> Hello,
> 
> this is clearly a bug in GHC:  where `B` and `C` are imported, there should 
> have been an error, saying that there is a duplicate instance of `Foo Int`.  
> If there is no ticket for this already, could you please add one?
> 
> -Iavor
> 
> 
> 
> 
> 
> 
> On Mon, Aug 11, 2014 at 12:35 PM, Dan Doel <dan.d...@gmail.com> wrote:
> On Mon, Aug 11, 2014 at 11:36 AM, Twan van Laarhoven <twa...@gmail.com> wrote:
> To me, perhaps naively, IncoherentInstances is way more scary than 
> OverlappingInstances.
> 
> ​It might be a bit naive. Most things that incoherent instances would allow 
> are allowed with overlapping instances so long as you partition your code 
> into two modules. So unless such a partitioning is impossible, overlapping 
> instances are almost as scary as incoherent instances (unless the module 
> separation somehow makes it less scary).
> 
> And actually, with the way GHC handles instances, you can get more incoherent 
> behavior than incoherent instances allow without enabling any extensions, 
> just using modules:
> 
>     module A where
>       class Foo a where foo :: a
> 
>     module B where
>       import A
>       instance F​​oo Int where foo = 5
>       bar :: Int ; bar = foo
> 
>     module C where
>       import A
>       instance Foo Int where foo = 6
>       baz :: Int ; baz = foo
> 
>     module D where
>       import B
>       import C
> 
>       quux = bar + baz -- 11​​
> 
> -- ​ Dan​
> 
> _______________________________________________
> Libraries mailing list
> librar...@haskell.org
> http://www.haskell.org/mailman/listinfo/libraries
> 
> 
> _______________________________________________
> Glasgow-haskell-users mailing list
> Glasgow-haskell-users@haskell.org
> http://www.haskell.org/mailman/listinfo/glasgow-haskell-users

_______________________________________________
Glasgow-haskell-users mailing list
Glasgow-haskell-users@haskell.org
http://www.haskell.org/mailman/listinfo/glasgow-haskell-users

Reply via email to