Recursion is one of the most difficult programming topics for students. In this paper, an instructional method is proposed to enhance students' understanding of recursion tracing. The proposal is based on the use of rules to translate linear recursion algorithms into equivalent, iterative ones. The paper has two main contributions: the instructional method itself, and its evaluation, which is based on previous works of other authors on mental models of recursion. As a result, an enhancement was measured in the viability of mental models exhibited by students (both for linear and multiple recursion), but no significant improvement was detected in their skills for designing recursive algorithms. Evidence was also obtained of the fact that many students with (relatively) viable mental models for linear recursion have unviable mental models for multiple recursion. Finally, it was noticed that many students adopt inaccurate mental models if those models are adequate to handle the given algorithm.
|Titolo:||Recursion Removal as an Instructional Method to Enhance the Understanding of Recursion Tracing|
|Data di pubblicazione:||2016|
|Tipologia:||1.1 Articolo in rivista|