问题描述
我的带有工作名称curryTuple
的组合器在功能社区中是否是一个通用名称?
const curryTuple = f => tuple =>
foldl(g => x => g(x)) (f) (tuple);
const triple = [x => y => x + y,[1,2,3,4,5]];
const foldl = f => acc => xs => xs.reduce((x,y) => f(x) (y),acc);
console.log(
curryTuple(foldl) (triple));
出于明显的原因,仅在动态类型的社区中:D
解决方法
它被称为uncurry
。
为了解释标题问题,是组合器采用了curried函数并返回了uncurried函数(采用元组)。实际同时使用curried函数和元组(并返回应用程序的结果)的组合器将是uncurry(uncurry)
。