One consideration is a practical one: does the programming language (or more strictly, its implementation) that you are using do tail-call elimination? Without tail-call elimination, recursion is slower than iteration, and deep recursion may lead to stack overflow problems.
Stephen C
- 25.4k
- 6
- 67
- 90