diff options
Diffstat (limited to 'Haskell-book/15/orphan-instance')
| -rw-r--r-- | Haskell-book/15/orphan-instance/Listy.hs | 10 | ||||
| -rw-r--r-- | Haskell-book/15/orphan-instance/ListyInstances.hs | 9 |
2 files changed, 19 insertions, 0 deletions
diff --git a/Haskell-book/15/orphan-instance/Listy.hs b/Haskell-book/15/orphan-instance/Listy.hs new file mode 100644 index 0000000..c99720a --- /dev/null +++ b/Haskell-book/15/orphan-instance/Listy.hs @@ -0,0 +1,10 @@ +module Listy where + +newtype Listy a = + Listy [a] + deriving (Eq, Show) + +instance Monoid (Listy a) where + mempty = Listy [] + mappend (Listy l) (Listy l') = + Listy $ mappend l l' diff --git a/Haskell-book/15/orphan-instance/ListyInstances.hs b/Haskell-book/15/orphan-instance/ListyInstances.hs new file mode 100644 index 0000000..39f7210 --- /dev/null +++ b/Haskell-book/15/orphan-instance/ListyInstances.hs @@ -0,0 +1,9 @@ +module ListyInstances where + +import Data.Monoid +import Listy + +instance Monoid (Listy a) where + mempty = Listy [] + mappend (Listy l) (Listy l') = + Listy $ mappend l l' |
