(Data.Monoid) - Sum和Product同时导出Bounded和Num?

问题描述 投票:2回答:1

Data.Monoid

newtype Sum a = Sum { getSum :: a }
    deriving ( Eq       -- ^ @since 2.01
             , Ord      -- ^ @since 2.01
             , Read     -- ^ @since 2.01
             , Show     -- ^ @since 2.01
             , Bounded  -- ^ @since 2.01
             , Generic  -- ^ @since 4.7.0.0
             , Generic1 -- ^ @since 4.7.0.0
             , Num      -- ^ @since 4.7.0.0
             )

我不明白你怎么能用NumBounded等在Sum上得到IntegerFloat ...这自然不是Bounded(这与Product包装器的故事相同)。

谢谢!

haskell typeclass monoids deriving
1个回答
7
投票

我很相信这会让Sum a成为Eq的一个例子,只要aEq的一个例子。

instance (Eq a) => Eq (Sum a) where ...

同样适用于所有其他课程。

© www.soinside.com 2019 - 2024. All rights reserved.