如果我有一个高阶函数,它接受一系列元素和一个映射和过滤元素的输入函数,那么它是否有正确的名称?处理序列的元素可以并行完成,因此输入函数不能依赖于元素之间的状态。因此,高阶函数的名称不是减少或折叠。
在Haskell中,它被称为mapMaybe,但该名称与Maybe类型相关联。
编辑: 只是为了澄清 - 我不是在询问有关Haskell或任何其他特定编程语言的任何信息。我问的是跨越编程语言的命名法。
答案 0 :(得分:0)
为什么你说它不是折叠?
foldr f [] xs可以做“地图和过滤”:
f p n = if p < 0 then n
else (sqrt p):n
过滤掉负数并将其余数字映射到数字的sqrt。