練習問題 3.7.3
計算機を使ってarrow1の型を見い出せ.
arrow1を型シグネチャなしで宣言したときの計算機の型推論による|arrow1|の型と,
arrow1 twoの型を見くらべる.
? :type arrow1
arrow1 :: ((Cnum a -> Cnum a) - c) -> Cnum a -> c
? :type arrow1 two
arrow1 two :: Cnum a -> Cnum a -> Cnum a
したがって,
c = Cnum a -> Cnum a = Cnum (a -> a)また
(Cnum a -> Cnum a) -> (Cnum a -> Cnum a) = Cnum (Cnum a)であるから,
arrow1 :: Cnum (Cnum a) -> Cnum a -> Cnum (a -> a)