A framework for teaching recursion
Gary A. Ford · ACM SIGCSE Bulletin · 1982
Recursion is presented as a generalized control structure, with iteration being a special case. A method is described to determine when to use recursion and when to use iteration in designing an algorithm to solve a problem.