Functional programming perversions in C++.