Learning C++ Functional Programming: Explore functional C++ with concepts like currying, metaprogramming and more