Fun With Functoids
By toddfast on Dec 14, 2004
If you want to learn more about functoids in general, see this paper by Brian McNamara and Yannis Smaragdakis entitled Functional Programming in C++. There is also this nice FC++ tutorial that is a bit easier to read. For the functional programmers out there (don't look at me--I'm not one), much can be summarized by stating that functoids correspond to closures. For the imperitive programmers out there, we'll define what a closure is some other day. <g> Actually, it's pretty easy to describe functoids for imperitive programmers as well: they are objects that enclose, or represent, functions. Konstantin Laufer has a very nice overview for functoids in C++ in his paper A Framework for Higher-Order Functions in C++.