練習問題 1.4.5
以下の型を持つ関数の例を与えよ.
(Integer -> Integer) -> Integer
(Integer -> Integer) -> (Integer -> Integer)
-- | 指定して関数を1に適用する関数
applyToOne :: (Integer -> Integer) -> Integer
applyToOne = ($ 1)
-- | 指定した関数を無視して1を返す関数
ignoreOne :: (Integer -> Integer) -> Integer
ignoreOne = const 1
-- | 指定した関数を無視
applyNever :: (Integer -> Integer) -> (Integer -> Integer)
applyNever f = id
-- | 指定した関数そのもの
applyOnce :: (Integer -> Integer) -> (Integer -> Integer)
applyOnce f = f