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