class SomeClass (m :: Type -> Type)
instance someClassArray :: SomeClass Array
instance someClassNewtype :: (Newtype (t a) (m a), SomeClass m) => SomeClass t
This gives me the error
Overlapping type class instances found for
Control.MonadPlus.SomeClass t
The following instances were found:
Control.MonadPlus.someClassArray
Control.MonadPlus.someClassNewtype
in type class instance
Control.MonadPlus.SomeClass t
PureScript(OverlappingInstances)
I don’t understand this.
Array is not a Newtype. I don’t see how they’re overlapping. Does the compiler not see the (Newtype (t a) (m a), SomeClass m)
dependency?