diff src/exec_tail_in_haskell.txt @ 22:fc44782929a7

Add monad in Haskell
author Yasutaka Higa <e115763@ie.u-ryukyu.ac.jp>
date Mon, 09 Feb 2015 11:17:00 +0900
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/exec_tail_in_haskell.txt	Mon Feb 09 11:17:00 2015 +0900
@@ -0,0 +1,22 @@
+*Main> :type Main.tail
+Main.tail :: List a -> List a
+*Main> let list = Cons 100 (Cons 200 (Cons 300 Nil)) :: List Int
+*Main> :type list
+list :: List Int
+*Main> :type even :: Int -> Bool
+even :: Int -> Bool :: Int -> Bool
+
+*Main> :type (fmap even list)
+fmap even list :: List Bool
+*Main> :type Main.tail (fmap even list)
+Main.tail (fmap even list) :: List Bool
+
+*Main> :type (Main.tail list)
+Main.tail list :: List Int
+*Main> :type fmap even (Main.tail list)
+fmap even (Main.tail list) :: List Bool
+
+*Main> Main.tail (fmap even list)
+Cons True (Cons True Nil)
+*Main> fmap even (Main.tail list)
+Cons True (Cons True Nil)