From ab8fe6397a6cbe1fefe08c21c6d6d7f6eff910bc Mon Sep 17 00:00:00 2001 From: Joe Zhao <ztuowen@gmail.com> Date: Sat, 31 Jan 2015 13:36:53 +0800 Subject: p3p4p5 --- p3.hs | 7 +++++++ p4.hs | 3 +++ p5.hs | 3 +++ 3 files changed, 13 insertions(+) create mode 100644 p3.hs create mode 100644 p4.hs create mode 100644 p5.hs diff --git a/p3.hs b/p3.hs new file mode 100644 index 0000000..7c8604d --- /dev/null +++ b/p3.hs @@ -0,0 +1,7 @@ +elementAt :: [a] -> Integer -> Maybe a + +elementAt [] _ = Nothing +elementAt (x:xs) 1 = Just x +elementAt (x:xs) n + | n>1 = elementAt xs (n-1) + | otherwise = Nothing diff --git a/p4.hs b/p4.hs new file mode 100644 index 0000000..1aea629 --- /dev/null +++ b/p4.hs @@ -0,0 +1,3 @@ +myLength :: [a] -> Integer + +myLength = foldl (\x _ -> x+1) 0 diff --git a/p5.hs b/p5.hs new file mode 100644 index 0000000..720eb9f --- /dev/null +++ b/p5.hs @@ -0,0 +1,3 @@ +myReverse :: [a] -> [a] + +myReverse = foldl (flip $ (:)) [] -- cgit v1.2.3-70-g09d2