--- /dev/null
+data List a = Nil | Cons a (List a)\r
+\r
+map f Nil = Nil\r
+map f (Cons h t) = Cons (f h) (map f t)\r
+\r
+map2 f l = run l\r
+ where\r
+ run Nil = Nil\r
+ run (Cons h t) = Cons (f h) (run t)\r
+\r
+map3 f l = run l\r
+ where\r
+ run Nil = Nil\r
+ run (Cons h t) = Cons (f h) (map f t)\r
+ \r
+main = "Foo"\r
+--\r
+Foo
\ No newline at end of file