Fig 1 - uploaded by Dalit Levy
Content may be subject to copyright.
Recursive phenomena.  

Recursive phenomena.  

Source publication
Article
Full-text available
Recursion is a significant concept, appearing in almost every introductory course in Computer Science (CS). CS educators and educational researchers often refer to difficulties in learning and teaching recursion. However, the research literature barely addresses the unique ways in which students relate to this interdisciplinary concept and the part...

Contexts in source publication

Context 1
... learners are then asked to classify these instances ( Fig. 1) according to some criteria of their own choosing. There is nòright' classi®cation, and the participants are invited to work in groups and to offer several different classi®cations along different criteria. These criteria are often found to be important constructs in the whole construction of the recursion concept. Consider the ...
Context 2
... has been mentioned before, there are several ways to classify the recursive phenomena appearing in Figure 1. The above episode shows the dimension criterion, but in general one can think also of various processes (®nite, in®nite, cyclic), different recursive types (single-or multi-dimen- sional), fractals and trees. ...

Citations

... Since reading code is an essential part of program comprehension; how students discuss the recursive functions in code can provide insight into how they understand recursion (Levy, 2001). Accordingly, students participated in task-based interviews where MI was presented along with a user-interface and the source code for the corresponding recursive program. ...
Conference Paper
Full-text available
The relationship between mathematical induction (MI) and recursion compels us to ask how we could leverage recursive functions to bolster students' understanding of MI. We describe task-based interviews that utilized concurrent interactions with MI tasks and recursive functions that mirrored those induction tasks via a character-based user-interface. To accommodate these multiple concurrent contexts and students' movement between abstraction levels, it was necessary to extend Hazzan's (1999) reducing abstraction framework to our navigating abstraction framework. This perspective allowed us to illustrate the way in which these three facets contributed to the co-evolution of students understanding of mathematical induction and computational recursion.
... Students often start by working in cooperative groups and later the results of each team are discussed with the whole class. Similarly, the organisation of the dialogues in two phases is based on the theoretical idea that recursion is a useful and powerful problem-solving strategy (Levy, 2001;Sooriamurthi, 2001). The different moments of discussion on the same dilemmatic question could thus generate a positive recursion in the process of searching for integrative solutions to the controversies. ...
Article
Full-text available
Dialogical argumentation practice contributes positively to argumentative writing skills. Specifically, deliberative dialogues are effective in promoting argument and counterargument integration in students' essays. However, the potential of dialogic activities may be increased if they are combined with instructional practices. The primary objective of this research is to compare the impact of four intervention programs, aimed at improving argumentative synthesis writing from conflicting sources. The four programs resulted from the combination of two instructional components (Explicit Instruction through video modelling—EI, or a Procedural Guideline—G), while Deliberative Dialogues—DD—were a constant element. We conducted a pre-post quasi-experimental study in which 186 Spanish third grade secondary school students (aged 14–15) participated. We evaluated the quality of the syntheses by examining the level of argumentative coverage (the total number of arguments included in the synthesis) and the level of integration (the type and frequency of the argumentative strategies used in the syntheses). The results showed that the effectiveness of the instructional methods varies according to the synthesis quality indicator. Explicit instruction, in combination with deliberative dialogues, was especially helpful in improving the level of integration of syntheses. The procedural guideline, in combination with deliberative dialogues, contributed significantly to the coverage of arguments. The combination of these two elements did not favor the writing of synthesis as expected, probably due to the conditions in which the intervention was carried out. The findings of this study revealed that the coverage of arguments and integration processes are of different nature, follow different learning paths and require different instructional processes.
... And how does the class discourse is shaped by collaborative processes? These questions have guided an in depth naturalistic research on learning recursion in Israeli high schools (Levy, 2001(Levy, , 2002. This chapter summarizes one part of the overall research, namely the nature of the conceptual change in the case of learning recursion via collaborative classroom activities. ...
... Another example of a highly linked system of preconceptions can be found in several 'potentially rich episodes', in which five or more different preconceptions were expressed in the same discourse episode. As has been extensively dealt with elsewhere (Levy, 2001), because of their argumentative nature, those episodes had the most promising potential for conceptual change. On the other hand, the preconception containing tended to 'stand by itself', not very much linked to other preconceptions. ...
Chapter
Full-text available
The growing body of research within computer-science education has not yet focused on studying conceptual change, in comparison with the intensive account of conceptual change in other science domains. For example, although the difficulties in learning and teaching the significant concept of recursion are often referred to, the research literature barely addresses the unique ways in which students relate to this interdisciplinary concept, the particular learners' language concerning recursive phenomena, and the processes of conceptual change. In order to fill the gap, the study here presented describes a naturalistic study in six Israeli computer-science classes and deals with a variety of conceptions emerged from analysing the students' discourse of recursive phenomena. The paper also suggests a model for organising the conceptions in a way that might represent a collaborative process of conceptual change in regard to recursion in particular, and might also hint at the communal nature of conceptual change in general. In terms of this paper, that nature is referred to as 'collaborative conceptual change'.
... However, recursion is frequently cited as one of the most difficult topics for beginning computer science students (e.g., Dale, 2006;Goldman et al., 2008). Most students have neither A c c e p t e d M a n u s c r i p t 11 previously encountered the concept nor its associated vocabulary (e.g., Kahney, 1983;Levy, 2001). When presented with recursive phenomena such as Koch Snowflakes (Greenberg, Xu, & Kumar, 2013), students tend to interpret them only as repetitive, cyclic, sequential, or multi-dimensional, which do not convey the essence of the concept as a self-referencing function (Levy, 2001). ...
... Most students have neither A c c e p t e d M a n u s c r i p t 11 previously encountered the concept nor its associated vocabulary (e.g., Kahney, 1983;Levy, 2001). When presented with recursive phenomena such as Koch Snowflakes (Greenberg, Xu, & Kumar, 2013), students tend to interpret them only as repetitive, cyclic, sequential, or multi-dimensional, which do not convey the essence of the concept as a self-referencing function (Levy, 2001). Further, students' lack of understanding about the execution mechanism of recursive code often persists through substantial training Sanders et al., 2006). ...
Article
Full-text available
The Knowledge in Pieces (KiP) framework offers a powerful perspective to understand the dynamic nature of knowledge and knowledge development. However, there is still much we do not know about the mechanisms underlying the moment-to-moment knowledge construction process. The purpose of this study was to explore the ways in which contextual knowledge elements support that process. According to KiP, a knowledge element, once activated, becomes part of the context that shapes the activation, configuration, and operation of other elements. Based on this assumption, we hypothesized that when the structural and operational characteristics of these contextual knowledge elements are compatible with those of the target concept, the contextual knowledge elements can support the knowledge construction process. This hypothesis was investigated in the domain of recursion, a fundamental but challenging programming concept. Sixty undergraduate computer science students completed four recursion evaluation tasks with varying likelihood to induce compatible contextual elements. Results showed that students performed better on high-compatibility tasks than on low-compatibility tasks at both the group level and individual level. Further qualitative analysis identified the knowledge elements involved and elaborated and refined the explanatory model for the contextual support effect.
... ELEs promote constructivist learning [1], allowing learners to explore and learn from constructing and exploring models. Deep conceptual and structural knowledge emerges from this way of learning [2], being particularly suitable for domains that allow multiple solutions or domains whose understanding would be facilitated by having different perspectives on the same phenomena [3]. ...
... Algorithm 1 formalises this approach. 3. this excludes the pond component for the pond-tiling task, as the pond is present in all strategies and all students started their constructions with the pond We use an off-task example observed in the second classroom session, and compare it with a behaviour which, although on-task, is inefficient in terms of its generalisation potential -see Fig. 11. ...
Article
Full-text available
Exploratory learning environments (ELEs) promote a view of learning that encourages students to construct and/or explore models and observe the effects of modifying their parameters. The freedom given to learners in this exploration context leads to a variety of learner approaches for constructing models and makes modelling of learner behaviour a challenging task. To address this issue, we propose a learner modelling mechanism for monitoring learners’ actions when constructing/exploring models by modelling sequences of actions reflecting different strategies in solving a task. This is based on a modified version of case-based reasoning for problems with multiple solutions. In our formulation, approaches to explore the task are represented as sequences of simple cases linked by temporal and dependency relations, which are mapped to the learners’ behaviour in the system by means of appropriate similarity metrics. This paper presents the development and validation of the modelling mechanism. The model was validated in the context of an ELE for mathematical generalisation using data from classroom sessions and pedagogically-driven learning scenarios.
... In the same vein, some researchers insist on bringing to the fore and qualifying the linguistic aspect of the relationship between learners and teachers. They set up experiments, record all interactions with software and video, then analyse the transcripts to pinpoint the misunderstandings, trace them back to plausible causes and try to capture the mental model at work (Anderson, Pirolli and Farrell, 1984;Levy and Lapidot, 2000;Levy, Lapidot and Paz, 2001;Levy, 2001;Murnane and Warner, 2001;Levy and Lapidot, 2002). Furthermore, these verbal exchanges can be conducted not solely to infer a mental model of the student and reach a diagnostic and remedy, but even to become a maieutic process on its own right Chang et al., 2000). ...
Article
Full-text available
We survey the literature about the teaching and learning of recursive programming. More precisely, we present the history of the advent of recursion in programming languages and its adoption by programmers, curricular approaches, textbooks, methodology, functional and imperative programming, control flow vs. data flow, the problem with base cases, induction in mathematics, analogies for recursion, games, visualizations and animations, multimedia environments, intelligent tutoring systems, visual programming, the Logo years, theoretical didactics, including constructivist and constructionist theories of learning, mental models, kinesthetic learning and syntonicity, etc. We append an extensive bibliography which was very carefully collated.
... Some researchers insist more on the first aspect and bring to the fore the essentially linguistic nature of the didactical relationship between learners and teachers in a traditional classroom. They set up experiments, record all the interactions, sometimes including video, and analyse the transcripts to pinpoint the misunderstandings and trace them back to plausible causes [5], [6], [7], [8]. Some other researchers focus more on the curricular aspect and note that most students are first taught iteration, which presupposes loops and side-effects, and that their model of execution of the programs is fixed early, thus hampering their later grasping of recursion which relies solely on function calls and perhaps not even on imperative features. ...
Conference Paper
Full-text available
Recursion is a powerful programming technique which is notoriously difficult to master, especially in functional languages because they prominently feature structural recursion as the main control-flow mechanism. We propose several hypotheses to understand the issue and put some to the test by designing an open-source interactive interface based on a tangible block-world with augmented reality and software feedback. Stacks of blocks are used as an analogy for the list data structure, which enables the simplest form of structural recursion. After using this application, students are expected to transfer their training to directly write recursive programs in sequential Erlang, a purely functional language.
... Fleury (2000) has found several misconceptions concerning the construction and use of objects in Java. In procedural programming, misconceptions about parameter passing (Fleury, 1991) and recursion (Levy, 2001) have been found; in imperative programming only fragile knowledge instead of misconceptions has been reported. In consequence, problems in learning seem to have different roots in OOP than in imperative programming. ...
Article
Full-text available
Programming education has experienced a shift from imperative and procedural programming to object-orientation. This shift has been motivated by educators' desire to please the information technology industry and potential students; it is not motivated by research either in psychology of programming or in computer science education. There are practically no results that would indicate that such a shift is desirable, needed in the first place, or even effective for learning programming. Moreover, there has been an implicit assumption that classic results on imperative and procedural programming education and learning apply to object-oriented programming (OOP) as well. We argue that this is not the case and call for systematic research into the fundamental cognitive and educational issues in learning and teaching OOP. We also present a research agenda intended to improve the understanding of OOP and OOP education.
... Difficulties with recursion were thoroughly studied in the past two decades. The focus of all the studies was on student comprehension of the basic concept and construct of recursion (e.g., [2,3,4,5,8,13]). However, recursion is not just a concept-construct element, it also is a problem-solving heuristic, which encapsulates backward reasoning and a reverse train of thought [10,12]. ...
Conference Paper
Full-text available
CS students learn and practice recursion in CS1, Data-Structures, Introduction-to-Algorithms, and additional courses throughout the curriculum. Previous studies revealed difficulties of CS1 students with the concept and the construct of recursion. What about advanced students? They may well understand the concept and the construct of recursion; but do they invoke and utilize recursion as a problem solving means? The paper examines this aspect, with senior CS students. The students were given three algorithmic tasks, for which the suitable solution approach was recursive. The student solutions and explanations demonstrate very limited capitalization on recursion as a problem solving means. We discuss the findings and suggest pedagogical implications for teaching.
... In order to bridge some of the gap, the first author's Ph.D. research focused on non-programming abilities and on interdisciplinary aspects of understanding recursion, as expressed by high school students learning FP [13]. The current paper deals mainly with students' descriptions of recursive phenomena, while presenting one of the research findings -the students' tendency to construct unique recursive descriptions individually, while using a shared set of some agreed-upon terms. ...
Conference Paper
Full-text available
This paper reports a study in which 11th grade students were observed, while engaged in several learning activities that address general aspects of recursion. One of these learning activities focused on the creation of recursive descriptions using natural language. The class discourse was recorded and analyzed, in order to locate patterns of students' expressions and ways of thinking. The present finding is two-fold. On the one hand, a class genre was created and used to refer to recursive phenomena and to describe them verbally. On the other hand, although they used a shared set of some agreed-upon terms, the students tended to individually construct their unique recursive descriptions. These individual methods of assembly are labeled hereafter as "private syntax". It is concluded that learners' and educators' awareness of both the "building blocks" of any recursive description and the several possibilities for assembling these blocks, might help in the process of understanding recursion in general and in further construction of recursive functions in particular.