diff options
author | Mart Lubbers | 2015-04-24 14:35:17 +0200 |
---|---|---|
committer | Mart Lubbers | 2015-04-24 14:35:17 +0200 |
commit | a067356625105f50978443d3b0a0a5d8f6391184 (patch) | |
tree | d194d49f36232b8e5860ca557c75f11a3ac05afe /fp2/week2/mart/oldold/old/Map.icl | |
parent | updated practicum files (diff) |
rare shit
Diffstat (limited to 'fp2/week2/mart/oldold/old/Map.icl')
-rw-r--r-- | fp2/week2/mart/oldold/old/Map.icl | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/fp2/week2/mart/oldold/old/Map.icl b/fp2/week2/mart/oldold/old/Map.icl new file mode 100644 index 0000000..d248c66 --- /dev/null +++ b/fp2/week2/mart/oldold/old/Map.icl @@ -0,0 +1,19 @@ +implementation module Map
+
+//import BinTree
+import StdMaybe
+import StdList
+
+class Map c :: (a -> b) (c a) -> c b
+
+instance Map [] where
+ Map f [] = []
+ Map f [x:xs] = [f x: Map f xs]
+
+instance Map Maybe where
+ Map f Nothing = Nothing
+ Map f (Just x) = Just (f x)
+
+//instance Map Tree where
+// Map f Leaf = Leaf
+// Map f (Node x l r) = Node (f x) (mapTree f l) (mapTree f r)
|