Affiliation:
1. Science Teaching Department, Weizmann Institute of Science, Rehovot, Israel
2. Tel-Hai College and Center of Educational Technology, 16 Klausner St. Tel-Aviv, IsraEL
Abstract
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 CS1, 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.
Publisher
Association for Computing Machinery (ACM)
Cited by
18 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献
1. Recursion in Secondary Computer Science Education: A Comparative Study of Visual Programming Approaches;Proceedings of the 55th ACM Technical Symposium on Computer Science Education V. 1;2024-03-07
2. Hearing Iterative and Recursive Behavior;Proceedings of the 55th ACM Technical Symposium on Computer Science Education V. 1;2024-03-07
3. BTRecurTutor: a tutorial for practicing recursion in binary trees;Computer Science Education;2020-01-20
4. Learning Recursion: Insights from the ChiQat Intelligent Tutoring System;Proceedings of the 12th International Conference on Computer Supported Education;2020
5. RecurTutor;ACM Transactions on Computing Education;2019-03-31