标签: haskell function-composition
我想改写
foldr (\_ y = y + 1) 0
使用flip,const和(+1)以及功能组合。
flip
const
(+1)
我已经走到这一步了:
foldr (\x -> ((+1) . (flip const x)) 0
但我似乎无法放弃这个lambda。有没有办法这样做?
答案 0 :(得分:6)
请注意(\_ -> e) = const e和e = (\y -> y + 1) = (+1)。因此,
(\_ -> e) = const e
e = (\y -> y + 1) = (+1)
foldr (const (+1)) 0