组合 Composition
组合某种类型(含函数)的两个元素,进而生成一个该类型的新元素:
JavaScript
let compose = (f, g) => a => f(g(a))
let toUpperCase = x => x.toUpperCase()
let exclaim = x => x + '!'
let shout = compose(exclaim, toUpperCase);
shout("hello world") // HELLO WORLD!
偏函数应用 Partial Application
一个多参函数,如果我们只提供了部分参数,这种应用就是偏函数