blob: d85d8a5741864437df610ab3847fa24fb6f212be (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
|
module Optional where
data Optional a =
Nada
| Only a
deriving (Eq, Show)
instance Monoid a => Monoid (Optional a) where
mempty = Nada
mappend x Nada = x
mappend Nada x = x
mappend (Only x) (Only y) = Only (mappend x y)
|