コードに個性なんていらない!徹底的に正規化するんだ!うがーっ!
再帰関数は、その性質からループに変換することができます。もちろん、再帰関数にしたほうが素直に実装できる場面も多々あるわけですが、その一方で、再帰関数にするまでもない(ループで済ませられる)場合もあるわけです。
再帰関数が遅いという表現をした場合、for文などのループで実装するより遅いという意味だと私は捉えています。件のソースをループで実装するのは(考えるのが)面倒なのでしませんけど。
ToDo: