Memoization Using C++11
Recently I've read an article Efficient Memoization using Partial Function Application. The author explains function memoization using partial application. When I was reading the article, I thought "Hmmm, can I come up with a more general solution?" And as suggested in the comments, one can use variadic templates to achieve it. So here is my version.