Iteration algorithms are the basic building blocks behind many of the
MPL's algorithms, and are usually the first place to look at when
starting to build a new one. Abstracting away the details of sequence
iteration and employing various optimizations such as recursion
unrolling, they provide significant advantages over a hand-coded
approach.