Currying is used to transform a function with many parameters to a function with less parameters. This is accomplished by binding some arguments of the main function so it can be reused when the function is called again.
This technique is helpful when you want certain arguments to be fixed for a series of functions.
For example if you write a function that prints that a group of people are good at things. You can set it up like this:
You see that the argument “Wizards” is passed every time we call greatWizards. Applying currying removes the need to do just that.
Apparently, it is true that Wizards are great at dancing