Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/haskell/10.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 - Fatal编程技术网

Haskell 灰姑娘的作用在哪里?

Haskell 灰姑娘的作用在哪里?,haskell,Haskell,我只是写了一个小函数,因为我在Hackage上找不到它,但我很确定它必须在那里,我就是找不到它。有人知道它是否存在于某个地方吗 我向大家介绍: cinderella :: (a -> Bool) -> [a] -> ([a], [a]) cinderella f = foldr (\x (a,b) -> if f x then (x:a,b) else (a,x:b)) ([],[]) 这相当于: filterFilter f l = (filter f l, filt

我只是写了一个小函数,因为我在Hackage上找不到它,但我很确定它必须在那里,我就是找不到它。有人知道它是否存在于某个地方吗

我向大家介绍:

cinderella :: (a -> Bool) -> [a] -> ([a], [a])
cinderella f = foldr (\x (a,b) -> if f x then (x:a,b) else (a,x:b)) ([],[])
这相当于:

filterFilter f l = (filter f l, filter (not . f) l)

。。。但可能不会进行两次遍历。

您想要函数。

分区
函数?
中断
仅在最长的匹配前缀处拆分。@Florian有3项,请检查所有项(提示分区为第3项)该死,您太快了+我想好了。。。那太容易了。。。我使用
Foldable
实现了它,但还没有签入
数据。。。