Functional programming in C++
Pizza into Java : Translating theory into practice