h ys =(map (+4)(filter(<5)ys))
任何人都可以向我解释为什么这可以改写为。
h = map (+4) . (filter (<5))
(filter (<5)) :: (Num a, Ord a) => [a] -> [a]
(+4) :: Num a => a -> a
我们如何用点组成这两个,然后返回类型的过滤器与(+4)
的参数不同?
答案 0 :(得分:2)
您正在撰写map (+4)
,而不是(+4)
,其类型为Num a => [a] -> [a]
,与filter (<5)
的{{1}}类型一起使用。< / p>