カリー化とは ・関数を返す関数
const add = (x, y) => x + y
で書かれた add(1,2) //1+2 を
const add = x -=> y => x + y add(1)(2)
にのように使えるようにするこれがカリー化
ではなぜこのようなことをするのか
add(1, 2) add(1, 3) . . . .
となるのがカリー化することによって
add1 = add(1) add1(2) add1(3) . .
つまり、引数の一部を共通化することが可能になっている。
Swift版
func add(x: Int, y Int) -> Int { retrun x + y }
カリー化すると
func add(x: Int) -> (Int) -> Int { return { y in x + y } }