Skip to main content
Article thumbnail
Location of Repository

Modelling recursion

By Mojtaba Ammari-Allahyari


The purpose of my research is to examine and explore the ways that\ud undergraduate students understand the concept of recursion. In order to do\ud this, I have designed computer-based software, which provides students with a\ud virtual and interactive environment where they can explore the concept of\ud recursion, and demonstrate and develop their knowledge of recursion through\ud active engagement. I have designed this computer-based software environment\ud with the aim of investigating how students think about recursion. My approach\ud is to design digital tools to facilitate students' understanding of recursion and to\ud expose that thinking.\ud My research investigates students' understanding of the hidden layers and\ud inherent complexity of recursion, including how they apply it within relevant\ud contexts. The software design embedded the idea of functional abstraction\ud around two basic principles of: 'functioning' and 'functionality'. The\ud functionality principle focuses on what recursion achieve, and the functioning\ud dimension concerns how recursion is operationalised. I wanted to answer the\ud following crucial question: How does the recursive thinking of university\ud students evolve through using carefully designed digital tools?\ud In the process of exploring this main question, other questions emerged:\ud 1. Do students understand the difference between recursion and iteration?\ud 2. How is tail and embedded recursion understood by the students?\ud 3. To what extent does prior knowledge of the concept of iteration\ud influence students' understanding of tail and embedded recursion?\ud 4. Why is it important to have a clear understanding of the control passing\ud mechanisms in order to understand recursion?\ud 5. What is the role of functional abstraction in both, the design of\ud computer-based tools and the students' understanding of recursion?\ud 6. How are students' mental models of recursion shaped by their\ud engagement with computer-based tools?\ud From a functional abstraction point of view almost all previous research into\ud the concept of recursion has focused on the functionality dimension. Typically,\ud it has focused on procedures for the calculation of the factorial of a natural\ud number, and students were tested to see if they are able to work out the values\ud of the a function recursively (Wiedenbeck, 1988; Anazi and Uesato, 1982) or if\ud they are able to recognize a recursive structure (Sooriamurthi, 2001; Kurland\ud and Pea, 1985). Also, I invented the Animative Visualisation in the Domain of\ud Abstraction (AVDA) which combines the functioning and functionality\ud principles regarding the concept of recursion. In the AVDA environment,\ud students are given the opportunity to explore the hidden layers and the\ud complicated behaviour of the control passing mechanisms of the concept of\ud recursion.\ud In addition, most of the textbooks in mathematics and computer sciences\ud usually fail to explain how to use recursion to solve a problem. Although it is\ud also true that text books do not typically explain how to use iteration to solve\ud problems, students are able to draw on to facilitate solving iterative problems\ud (Pirolli et al, 1988).\ud My approach is inspired by how recursion can be found in everyday life and in\ud real world phenomena, such as fractal-shaped objects like trees and spirals.\ud This research strictly adheres to a Design Based Research methodology (DBR),\ud which is founded on the principle of the cycle of designing, testing (observing\ud the students' experiments with the design), analysing, and modifying (Barab\ud and Squire, 2004; Cobb and diSessa, 2003). My study was implemented\ud throughout three iterations. The results showed that in the AVDA (Animative\ud Visualisation in the Domain of Abstraction) environment students' thinking\ud about the concept of recursion changed significantly. In the AVDA\ud environment they were able to see and experience the complicated control\ud passing mechanism of the tail and embedded recursion, referred to a delegatory\ud control passing. This complicated control passing mechanism is a kind of\ud generalization of flow in the iterative procedures, which is discussed later in\ud the thesis.\ud My results show that, to model a spiral, students prefer to use iterative\ud techniques, rather than tail recursion. The AVDA environment helped students\ud to appreciate the delegatory control passing for tail recursive procedures.\ud However, they still demonstrated difficulties in understanding embedded\ud recursive procedures in modelling binary and ternary trees, particularly\ud regarding the transition of flow between recursive calls.\ud Based on the results of my research, I have devised a model of the evolution of\ud students' mental model of recursion which I have called – the quasi-pyramid\ud model. This model was derived from applying functional abstraction including\ud both functionality and functioning principles. Pedagogic implications are\ud discussed. For example, the teaching of recursion might adopt 'animative'\ud visualization, which is of vitally important for students' understanding of latent\ud layers of recursion

Topics: LB, QA
OAI identifier:

Suggested articles


  1. (1972). A Mathematical Introduction to Logic, doi
  2. (1982). Accommodation of a scientific conception: toward a theory of conceptual change‟, doi
  3. (1996). An Exploration in the Space of Mathematics Education‟, doi
  4. (1997). Analogical reasoning and conceptual change: A case study of Johannes Kepler‟, doi
  5. (2007). Analysing Qualitative Data, doi
  6. (1994). Animating recursion as an aid to instruction‟, doi
  7. (1989). Bias in Human Reasoning, Causes and Consequences, doi
  8. (1992). Chaos and Fractal: New Frontiers of Science, doi
  9. (1984). Children Learning Logo Programming, Interim report No.
  10. (1987). Children Working in Structured Logo Environment: From Doing to Understanding,
  11. (1985). Children‟s mental models of recursive LOGO programs‟, doi
  12. (1988). Cognition in Practice: Mind, Mathematics, and Culture in Everyday Life, Cambridge: doi
  13. (1988). Cognitive Apprenticeship and Instructional technology‟, doi
  14. (1985). Computer Science Logo Style, Volume 1: Intermediate Programming.
  15. (1981). Concept image and concept definition in mathematics with particular reference to limits and continuity‟, doi
  16. (1988). Conceptual differences between children and adults‟, doi
  17. (1998). Conceptual Models and Cognitive Learning Styles in Teaching Recursion‟, doi
  18. (1993). Connected Mathematics: Building Concrete Relationships with Mathematical Knowledge‟, unpublished PhD dissertation,
  19. (2006). Connecting Engagement and Focus in Pedagogic Task Design‟, doi
  20. (1990). Constructionist Learning‟,
  21. (1978). Describing the human operator's internal model of a dynamic system‟,
  22. (1992). Design experiments: Theoretical and methodological challenges in creating complex interventions in classroom settings‟, doi
  23. (2002). Design research: what we learn when we engage in design‟, doi
  24. (2003). Design-based research: An emerging paradigm for educational inquiry, doi
  25. (2004). Design-Based Research: Putting a Stake in the Ground‟”, doi
  26. (2008). Designing for mathematical abstraction‟, (in press), doi
  27. (1988). Development of mental models of an office system: A field study on an introductory course‟, doi
  28. (1987). Empirical Comparison of Techniques for Teaching Recursion in Introductory Computer Science‟,
  29. (1991). Epistemological Pluralism and the Revaluation of the Concrete, doi
  30. (2000). Experiences with Novices: The Importance of Graphical Representations in Supporting Mental Models‟,
  31. (2005). Exploring Students‟ Understanding of the Relationship between Recursion and Iteration,
  32. (2002). Fractals, Graphics, doi
  33. (1992). Identifying and Supporting Mental Methods of Recursion in a Learning Environment‟,
  34. (2002). Intelligence, Learning and Understanding in Mathematics: A tribute to Richard Skemp,
  35. (1965). Interviewing, Its Forms and Functions, doi
  36. (1996). Interviews: An Introduction to Qualitative Research Interviewing, Thousand Oaks, doi
  37. (1982). Is recursive computation difficult to learn?‟,
  38. (1997). Iteration, Control Structures, Extensibility. Computer Science Logo Style,
  39. (1986). Learning Flow of Control: Recursive and Iterative Procedures‟, doi
  40. (1993). Learning from mathematics practice in out-of-school situations‟, doi
  41. (1992). Learning Mathematics and Logo, doi
  42. (2004). Learning Mathematics, Issues, Theory and Classroom Practice,
  43. (1984). Learning Mathematics. doi
  44. (1988). Learning recursion as a concept and as a programming technique‟, doi
  45. (1982). Learning recursive procedures by middle school children‟,
  46. (1984). Learning to Program LISP‟, doi
  47. (1999). Learning to program recursive functions‟,
  48. (1998). Linking Mental Models and Cognitive Maps as an Aid to Organisational Learning, doi
  49. (1984). Logo: A Guide to Learning Through Programming,
  50. (1982). LOGO: An Introduction For Teachers, Students and Other Computer Users New to the Philosophy and Methodology of Logo,
  51. (2000). Making Sense of the Total of Two Dice‟, doi
  52. (1985). Mathematical Induction and Computational Recursion,
  53. (2007). Mathematical Structures for Computer Sciences: A Modern Approach to
  54. (2003). Mental Models of Recursion‟, doi
  55. (1983). Mental Models, Hillsdale, NJ: Lawrence Erlbaum Associates.
  56. (1983). Mental Models: Towards a Cognitive Science of Language, Interface and Consciousness. Cambridge: doi
  57. (1992). Mental models‟, doi
  58. (1995). Microworlds as Representations‟, doi
  59. (1980). Mindstorms: Children, Computers and Powerful Ideas, doi
  60. (1991). On the dual nature of mathematical conceptions: Reflections on processes and objects as different sides of the same coin‟. doi
  61. (1979). On the structure of knowledge – A morphology of mental models in a man-machine system context
  62. (2004). Ontological innovation and the role of theory in design experiments‟, doi
  63. (1995). Planning for Portability‟,
  64. (2001). Problems in comprehending recursion and suggested solutions‟, doi
  65. (2000). Proof and Fundamentals, doi
  66. (2002). Purpose and Utility in Pedagogic Task Design‟,
  67. (1996). Purposeful contexts for formal notation in a spreadsheet environment‟, doi
  68. (1988). Quality and Quantity doi
  69. (2000). Recursion is Gradual steps (is recursion really that difficult?)‟, doi
  70. (1994). Reflective abstraction in advanced mathematical thinking‟, in Tall, doi
  71. (1976). Relational understanding and instrumental understanding‟, doi
  72. (2005). Research Methodology,
  73. (1969). Roles in Sociological Field observations, in doi
  74. (1993). Shared Terminology, Private Syntax: The case of recursive descriptions‟, doi
  75. (1990). Similarity involving attribute and relations: judgments of similarity and differences are not inverses‟, doi
  76. (1994). Simply Scheme.
  77. (1991). Situated Learning Legitimate Peripheral Participation, Cambridge: doi
  78. (1996). Social Context in HCI: A New Framework for Mental Models,
  79. (2001). Social Research Issues, Methods and Process, doi
  80. (2001). Social Research Methods, doi
  81. (1983). Some Observations on Mental Models,
  82. (1983). Structure-mapping: A theoretical framework for analogy, doi
  83. (1989). Teaching Recursion as a Problem-Solving Tool Using Standard ML‟, doi
  84. (1999). Teaching Recursion Before Loops in CS1‟,
  85. (1999). Teaching Recursion in a Procedural Environmental - How much should we emphasize the Computing Model?‟, doi
  86. (1989). Technology and Mathematics Education: A survey of recent developments and important problems‟, doi
  87. (1981). The Art of Progressive Focussing‟,
  88. (2002). The case of Base Cases: Why are they so Difficult to Recognize? doi
  89. (1993). The Children‟s Machine: Rethinking School in the Age of the Computer,
  90. (1998). The Construction of Meanings In and For a Stochastic Domain of Abstraction‟, Unpublished
  91. (2005). The Didactical Challenge of Symbolic Calculators Turning a Computational Device into a Mathematical Instrument, doi
  92. (1990). The Fifth Discipline: The Art and Practice of the Learning Organization, doi
  93. (1982). The Fractal Geometry of Nature, doi
  94. (2004). The History of Mental Models‟,
  95. (1991). The IGPME working group on representations‟,
  96. (1993). The link between Individual and Organizational Learning‟, Sloan Management Review.
  97. (2000). The Maths We Need Now: Demands, Deficits and Remedies,
  98. (1943). The Nature of Explanation, Cambridge: doi
  99. (1968). The Participant – observer as Human Being: Observations on the Personal Aspects of Field Work‟,
  100. (1971). The Psychology of Learning Mathematics, doi
  101. (1983). The reflective practitioner, doi
  102. (1998). The Researcher‟s Toolkit,
  103. (2006). The Role of Aesthetics
  104. (1985). The role of learning from examples in the acquisition of recursive programming skills‟, doi
  105. (1984). The role of mental models in learning to operate a device‟, doi
  106. (1983). The role of problem representation
  107. (1988). The Society of Mind. London: Picador in association with Heinemann.
  108. (1995). The Theory of Learning Strategies: An Introduction.
  109. (1995). The Theory of Learning: An Introduction.
  110. (2001). Transparent Queries: investigation user‟s mental models of search engines‟, doi
  111. (2001). Visual representation for recursion‟, doi
  112. (1998). What changes in conceptual change?‟, doi
  113. (1983). What do novice programmers know about recursion?‟, doi
  114. (1997). What is a Processual Analysis?‟, doi
  115. (2000). Where Mathematics Comes From: The Embodied Mind Brings Mathematics into Being, doi

To submit an update or takedown request for this paper, please submit an Update/Correction/Removal Request.