summaryrefslogtreecommitdiff
path: root/week5/mart
diff options
context:
space:
mode:
Diffstat (limited to 'week5/mart')
-rw-r--r--week5/mart/Origami.icl11
1 files changed, 11 insertions, 0 deletions
diff --git a/week5/mart/Origami.icl b/week5/mart/Origami.icl
new file mode 100644
index 0000000..56fdb86
--- /dev/null
+++ b/week5/mart/Origami.icl
@@ -0,0 +1,11 @@
+module Origami
+
+import StdEnv
+
+sum` = foldr (+) 0
+prod` = foldr (*) 1
+flatten` = foldr (++) []
+length` = foldr (\x l=l+1) 0
+reverse` = foldl (\xs x=[x:xs]) []
+takeWhile` p = foldr (\x xs=if (p x) [x:xs] []) []
+maxList` = foldr (\x m=if (m<x) x m) 0