We've already gone far in our quest to understand functional programming! We learned about pure functions and lambdas and dived into lambda calculus with the help of functional composition. We now know how to create functions from other functions.
There's still one more thing to learn about the basis of lambda calculus. Besides functional composition, we can also create functions from other functions through two operations—currying and partial application. This will complete our discussion on functional building blocks and allow you to move forward towards designing with functions.
The following topics will be covered in this chapter:
- What is partial application?
- How to use partial application in C++
- What is currying?
- How to curry functions in C++
- The relationship between currying and partial application
- How to combine currying...