This is a presentation I gave to the Northwest C++ Users Group in October 2009. I show how useful the knowledge of functional programming is to C++ Template Metaprogramming. It's a parallel tutorial in Haskell and C++ metaprogramming. I also explain variadic templates and Template Parameter Packs found in C++0x.