Subj : Re: Are recursive functions ever needed? To : comp.programming From : Gene Date : Sun Oct 02 2005 09:37 pm This is angels dancing on pins. At a certain level of abstraction, of course iteration and recursion are the same thing. The question author was clearly asking about programming styles in imperative languages. Recursive in this context means "using self- or mutually-referential function/procedure calls," and iterative means "using looping structures." It is certainly always possible to translate from the former to the latter (and back). CPS only hides the mechanism for storing intermediate results. It's not a priori any more or less "recursive" than a loop and a stack or a self-referential call. When you compile to code, the RTS will have either a stack or a heap where closures store the same data as would have been contained in what you call a "manual stack." .