TY - GEN
T1 - Teaching recursion in a procedural environment - How much should we emphasize the computing model?
AU - Ginat, David
AU - Shifroni, Eyal
N1 - Publisher Copyright:
© 1999 ACM.
PY - 1999/3/24
Y1 - 1999/3/24
N2 - Recursion is a powerful and essential computational problem solving tool, but the concept of recursion is difficult to comprehend. Students that master the conventional programming construct of iteration in procedural programming environments, find it hard to utilize recursion. This study started as a test of CS College students' utilization of recursion. It was conducted after they have completed CSl, where they studied recursion with the C programming language. The test revealed that students adhere to the iterative pattern of "forward accumulation", due to their confidence with the iteration construct, but lack of trust of the recursion mechanism. These results motivated us to get more insight into the nature of recursion difficulties and ways to overcome them. In this paper we describe the difficulties we observed, and present a declarative, abstract, approach that contributed to overcome them. We question the emphasis that should be put on the basic computing model when presenting recursion, and argue for emphasis on the declarative approach for teaching recursion formulation in a procedural programming environment.
AB - Recursion is a powerful and essential computational problem solving tool, but the concept of recursion is difficult to comprehend. Students that master the conventional programming construct of iteration in procedural programming environments, find it hard to utilize recursion. This study started as a test of CS College students' utilization of recursion. It was conducted after they have completed CSl, where they studied recursion with the C programming language. The test revealed that students adhere to the iterative pattern of "forward accumulation", due to their confidence with the iteration construct, but lack of trust of the recursion mechanism. These results motivated us to get more insight into the nature of recursion difficulties and ways to overcome them. In this paper we describe the difficulties we observed, and present a declarative, abstract, approach that contributed to overcome them. We question the emphasis that should be put on the basic computing model when presenting recursion, and argue for emphasis on the declarative approach for teaching recursion formulation in a procedural programming environment.
KW - Problem decomposition
KW - Recursive formulation
UR - http://www.scopus.com/inward/record.url?scp=84974530157&partnerID=8YFLogxK
M3 - ???researchoutput.researchoutputtypes.contributiontobookanthology.conference???
AN - SCOPUS:84974530157
T3 - SIGCSE 1999 - Proceedings of the 13th SIGCSE Technical Symposium on Computer Science Education
SP - 127
EP - 131
BT - SIGCSE 1999 - Proceedings of the 13th SIGCSE Technical Symposium on Computer Science Education
PB - Association for Computing Machinery, Inc
T2 - 13th SIGCSE Technical Symposium on Computer Science Education, SIGCSE 1999
Y2 - 24 March 1999 through 28 March 1999
ER -