]>
Commit | Line | Data |
---|---|---|
7c673cae FG |
1 | |
2 | Iteration algorithms are the basic building blocks behind many of the | |
3 | MPL's algorithms, and are usually the first place to look at when | |
4 | starting to build a new one. Abstracting away the details of sequence | |
5 | iteration and employing various optimizations such as recursion | |
6 | unrolling, they provide significant advantages over a hand-coded | |
7 | approach. | |
8 | ||
9 | .. Of all of iteration algorithms, ``iter_fold_if`` is the | |
10 | most complex and at the same time the most fundamental. The rest of | |
11 | the algorithms from the category |--| ``iter_fold``, ``reverse_iter_fold``, | |
12 | ``fold``, and ``reverse_fold`` |--| simply provide a more high-level | |
13 | (and more restricted) interface to the core ``iter_fold_if`` | |
14 | functionality [#performace]_. | |
15 | ||
16 | .. [#performace] That's not to say that they are *implemented* | |
17 | through ``iter_fold_if`` |--| they are often not, in particular | |
18 | because the restricted functionality allows for more | |
19 | optimizations. | |
20 | ||
21 | ||
22 |