Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/haskell/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Haskell 将列表理解转化为功能应用_Haskell_List Comprehension - Fatal编程技术网

Haskell 将列表理解转化为功能应用

Haskell 将列表理解转化为功能应用,haskell,list-comprehension,Haskell,List Comprehension,我有一个函数是用列表理解写的。作为一项学习,我决定尝试使用map、zip、fold等将此函数转换为函数应用程序。我在转换此函数时遇到了一个非常困难的问题 这可能看起来不合理,但这是一个更大的功能的一部分,我想让这件工作首先 combination :: Int -> [a] -> [([a],[a])] combination 0 xs = [([],xs)] combination n (x:xs) = [ (x:ys,zs) | (ys,zs) <- combina

我有一个函数是用列表理解写的。作为一项学习,我决定尝试使用map、zip、fold等将此函数转换为函数应用程序。我在转换此函数时遇到了一个非常困难的问题

这可能看起来不合理,但这是一个更大的功能的一部分,我想让这件工作首先

combination :: Int -> [a] -> [([a],[a])]
combination 0 xs     = [([],xs)]
combination n (x:xs) = [ (x:ys,zs) | (ys,zs) <- combination (n-1) xs ]
组合::Int->[a]->[([a],[a])]
组合0 xs=[([],xs)]

组合n(x:xs)=[(x:ys,zs)|(ys,zs)它只是一张
地图

combination :: Int -> [a] -> [([a],[a])]
combination 0 xs     = [([],xs)]
combination n (x:xs) = map (\(ys, zs) -> (x:ys,zs)) (combination (n-1) xs)

哇,我想我把这件事搞得太复杂了,因为我试图去掉
组合0 xs=[([],xs)]
的第一个模式匹配。非常感谢您的回复。