uncurried
object Function { def uncurried[X1, ..., Xn, Y](f: (X1) => ... => (Xn) => Y): (X1, ..., Xn) => Y }
uncurried は、関数 f から始まる一連の高階関数が受け取る一連のパラメーターを一度に受け取る匿名関数を作成します。
f