Someone hasn't heard of tail recursion/calls and how it's optimized. If dome right, it can be roughly the same as iteration (when compiled). Certain functional languages guarantee to properly handle such cases, and it's safe(and fast) to use tail recursion, however for most imperative languages I'd use iteration.