diff options
Diffstat (limited to 'Haskell-book/15/Madness.hs')
| -rw-r--r-- | Haskell-book/15/Madness.hs | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/Haskell-book/15/Madness.hs b/Haskell-book/15/Madness.hs new file mode 100644 index 0000000..9d6aa34 --- /dev/null +++ b/Haskell-book/15/Madness.hs @@ -0,0 +1,36 @@ +module Madness where + +import Data.Monoid + +type Verb = String +type Adjective = String +type Adverb = String +type Noun = String +type Exclamation = String + +madlibbin' :: Exclamation + -> Adverb + -> Noun + -> Adjective + -> String +madlibbin' e adv noun adj = + e <> "! he said " <> + adv <> " as he jumped into his car " <> + noun <> " and drove off with his " <> + adj <> " wife." + +madlibbinBetter' :: Exclamation + -> Adverb + -> Noun + -> Adjective + -> String +madlibbinBetter' e adv noun adj = + mconcat [ e + , "! he said " + , adv + , " as he jumped into his car " + , noun + , " and drove off with his " + , adj + , " wife." + ] |
