From 03943e4b7c13c759e9db6cbef940e29054c78ff2 Mon Sep 17 00:00:00 2001 From: Julian Ospald Date: Thu, 16 Apr 2015 20:55:49 +0200 Subject: [PATCH] Add example code --- Code.hs | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) create mode 100644 Code.hs diff --git a/Code.hs b/Code.hs new file mode 100644 index 0000000..d53bcab --- /dev/null +++ b/Code.hs @@ -0,0 +1,41 @@ +module Code where + +data WeekDay = Monday + | Tuesday + | Thursday + | Wednsday + | Friday + | Saturday + | Sunday + deriving (Show) + + +f :: Int -> Int -> Int +f x 0 = 1 +f x y = x * f x (y - 1) + +mod2 :: Int -> Int +mod2 x + | x - 2 == 0 = 0 + | x - 2 < 0 = x + | otherwise = mod2 (x - 2) + +week :: [WeekDay] +week = [Monday, Tuesday, Thursday, Wednsday + , Friday, Saturday, Sunday] + +isMonday :: WeekDay -> Bool +isMonday Monday = True +isMonday x = False + +data Tree = Leaf Char + | Node Tree Int Tree + deriving Show + +data MaybeInt = NoError Int + | Error String + +calcSomething :: Int -> MaybeInt +calcSomething x + | x < 100 = NoError (x * 5) + | otherwise = Error "Int out of range!"