curry method
Curries the function.
Transforms it into a higher order function that takes a single argument and returns another function that takes a single argument and returns another function, as many times as many there were arguments in the original function.
Handy for partial application.
Implementation
CF3<B, C, D, T> curry(A a) => (b) => (c) => (d) => this(a, b, c, d);