Partial application
The second transformation that we will be considering lets you fix some of the parameters of the function, creating a new function that will receive the rest of them. Let's make this clear with a nonsense example. Imagine you have a function with five parameters. You might want to fix the second and fifth parameters, and partial application would then produce a new version of the function that fixed those two parameters but left open the other three for new calls. If you called the resulting function with the three required arguments, it would produce the correct answer, by using the original two fixed parameters plus the newly provided three.
Note
The idea of specifying only some of the parameters in function application, producing a function of the remaining parameters is called projection: you are said to be projecting the function onto the remaining arguments. We will not use this term, but we wanted to cite it, just in case you happen to find it somewhere else.
Let...