A Survey on Teaching and Learning Recursive Programming

We survey the literature about the teaching and learning of recursive programming. After a short history of the advent of recursion in programming languages and its adoption by programmers, we present curricular approaches to recursion, including a review of textbooks and some programming methodolog...

Full description

Bibliographic Details
Main Author: Christian RINDERKNECHT
Format: Article
Language:English
Published: Vilnius University 2014-04-01
Series:Informatics in Education
Subjects:
Online Access:http://www.mii.lt/informatics_in_education/pdf/INFE235.pdf
id doaj-1f52d79b705445b2930b35c178722510
record_format Article
spelling doaj-1f52d79b705445b2930b35c1787225102021-01-02T07:39:53ZengVilnius UniversityInformatics in Education1648-58312014-04-0113187119A Survey on Teaching and Learning Recursive ProgrammingChristian RINDERKNECHT0Department of Programming Languages and Compilers, Eötvös Loránd University Budapest, HungaryWe survey the literature about the teaching and learning of recursive programming. After a short history of the advent of recursion in programming languages and its adoption by programmers, we present curricular approaches to recursion, including a review of textbooks and some programming methodology, as well as the functional and imperative paradigms and the distinction between control flow vs. data flow. We follow the researchers in stating the problem with base cases, noting the similarity with induction in mathematics, making concrete analogies for recursion, using games, visualizations, animations, multimedia environments, intelligent tutoring systems and visual programming. We cover the usage in schools of the Logo programming language and the associated theoretical didactics, including a brief overview of the constructivist and constructionist theories of learning; we also sketch the learners' mental models which have been identified so far, and non-classical remedial strategies, such as kinesthesis and syntonicity. We append an extensive and carefully collated bibliography, which we hope will facilitate new research.http://www.mii.lt/informatics_in_education/pdf/INFE235.pdfcomputer science educationdidactics of programmingrecursiontail recursionembedded recursioniterationloopmental models.
collection DOAJ
language English
format Article
sources DOAJ
author Christian RINDERKNECHT
spellingShingle Christian RINDERKNECHT
A Survey on Teaching and Learning Recursive Programming
Informatics in Education
computer science education
didactics of programming
recursion
tail recursion
embedded recursion
iteration
loop
mental models.
author_facet Christian RINDERKNECHT
author_sort Christian RINDERKNECHT
title A Survey on Teaching and Learning Recursive Programming
title_short A Survey on Teaching and Learning Recursive Programming
title_full A Survey on Teaching and Learning Recursive Programming
title_fullStr A Survey on Teaching and Learning Recursive Programming
title_full_unstemmed A Survey on Teaching and Learning Recursive Programming
title_sort survey on teaching and learning recursive programming
publisher Vilnius University
series Informatics in Education
issn 1648-5831
publishDate 2014-04-01
description We survey the literature about the teaching and learning of recursive programming. After a short history of the advent of recursion in programming languages and its adoption by programmers, we present curricular approaches to recursion, including a review of textbooks and some programming methodology, as well as the functional and imperative paradigms and the distinction between control flow vs. data flow. We follow the researchers in stating the problem with base cases, noting the similarity with induction in mathematics, making concrete analogies for recursion, using games, visualizations, animations, multimedia environments, intelligent tutoring systems and visual programming. We cover the usage in schools of the Logo programming language and the associated theoretical didactics, including a brief overview of the constructivist and constructionist theories of learning; we also sketch the learners' mental models which have been identified so far, and non-classical remedial strategies, such as kinesthesis and syntonicity. We append an extensive and carefully collated bibliography, which we hope will facilitate new research.
topic computer science education
didactics of programming
recursion
tail recursion
embedded recursion
iteration
loop
mental models.
url http://www.mii.lt/informatics_in_education/pdf/INFE235.pdf
work_keys_str_mv AT christianrinderknecht asurveyonteachingandlearningrecursiveprogramming
AT christianrinderknecht surveyonteachingandlearningrecursiveprogramming
_version_ 1724357170961580032