Real World Haskellの 321 ページ
これらのコードがあり、
...
{-# LANGUAGE GeneralizedNewtypeDeriving #-}
newtype AInt = A { unA::Int }
deriving (Show, Eq, Num)
instance Monoid AInt where
mempty = 0
私の混乱はなぜそれが
mempty = 0
だがしかし
mempty = A 0
?
また、両方に気付きました
ghci> 0 :: AInt
と
ghci> A 0 :: AInt
同じ返事をして
A { unA = 0 }
これら2つの違いは何ですか?