相关疑难解决方法(0)

比较中的Monoid实例在哪里定义?

newtype Comparison a定义于Data.Functor.Contravariant.

在定义的此模块的版本中contravariant-1.5,Monoid实例on Contravariant定义如下:

instance Monoid (Comparison a) where
  mempty = Comparison (\_ _ -> EQ)
  mappend (Comparison p) (Comparison q) = Comparison $ mappend p q
Run Code Online (Sandbox Code Playgroud)

Data.Functor.Contravariant也用基数定义(显然是GHC 8.6.1).在base中,Monoid实例on Comparison定义如下:

deriving instance Semigroup (Comparison a)
deriving instance Monoid (Comparison a)
Run Code Online (Sandbox Code Playgroud)

什么使实例Monoid (Comparison a)能够在base中自动派生?

我应该在哪里查看memptymappend它的定义?

haskell monoids

3
推荐指数
2
解决办法
60
查看次数

标签 统计

haskell ×1

monoids ×1