'Curry' is a name for a utility function commonly employed in a functional programming context. Typically, the curry function takes in a function with arity N ('arity' simply means 'the number of arguments a function takes') and returns a function with an arity of 1.
When called, the returned function applies its argument to the original function, and then returns a new function with arity of one. When called, this returned function applies its argument, in turn, returning another function with an arity of one, and so on-- until all of the arguments have been passed in to the original function, at which point it is actually called and the actual result is returned.
We can manually curry funcitons without a currying utility function. For example: