Haskell:一个组合案例
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Haskell:一个组合案例相关的知识,希望对你有一定的参考价值。
这是通过foldl
连接的无用案例,纯粹教育(对我而言):
foldl (\xs x -> xs ++ [x]) [1,2] [11,12,13]
[1,2,11,12,13]
有没有办法将它打包得更紧,使用组合而不是lambda?
答案
这只是从HTNW和Will Ness的评论中提取的更易读的摘要:
-- Reduction to poinfree
a = \xs x -> xs ++ [x]
b = \xs x -> xs ++ return x
c = \xs x -> ((xs ++) . return) x
d = \xs x -> ((. return) (xs ++)) x
e = \xs x -> ((. return) . (++)) xs x
以上是关于Haskell:一个组合案例的主要内容,如果未能解决你的问题,请参考以下文章