@yish

Programming-languages as a conceptual framework for teaching mathematics.

, , and . Interactive Learning Environments, 19 (5): 487-501 (2011)

Abstract

Formal mathematical methods remain, for most high school students, mysterious, artificial and not a part of their regular intuitive thinking. The authors develop some themes that could lead to a radically new approach. According to this thesis, the teaching of programming languages as a regular part of academic progress can contribute effectively to reduce formal barriers. This education can also be used to enable pupils to access an accurate understanding of some key mathematical concepts. In the field of heuristic knowledge for technical problem solving, experience of programming is no less valuable: it lends itself to promote a discussion of relations between formal procedures and the comprehension of intuitive problem solving and provides examples for the development of heuristic precepts (formulating a plan, subdividing the complexities, etc.). The knowledge gained in programming can also be used for the discussion of concepts and problems of classical mathematics. Finally, it can also facilitate the expansion of mathematical culture to topics in biological and physical sciences, linguistics, etc. The authors describe a programming language called 'Logo' adapted to objectify an enduring framework of mathematical experimentation. The paper reprinted below is the first published paper on the Logo programming language. It was written in 1968 by two of the three Logo language designers and presented at conference in Nice, France, in May 1968. It is important for several reasons. It clearly sets forth the objective of creating a language that is mathematically powerful yet accessible to little ones – easy enough for a third grade child to use for simple tasks. Its effectiveness for motivating students in posing and solving problems argues for Logo's educational power and utility. The heart of the language is set forth in this description of the genesis of Logo and its early form. Logo was designed to provide a conceptual foundation for teaching mathematical and logical ways of thinking in terms of programming ideas and activities. A rich variety of tasks that are interesting to children readily lend themselves to Logo programming. These may be drawn from mathematics, language, art, music, and other domains, in tasks of personal interest to students, often of their own choosing. They include such things as a variety of word games (finding words contained in words, writing words backwards, finding palindromes); question–answering and guessing games (e.g., Buzz, Twenty Questions); building semantic grammars for generating and producing poetry, jokes, or songs; making and breaking secret codes (e.g., substitution ciphers); designing and drawing patterns with a program controlled robot turtle; and developing strategies for a turtle with sensors to circumnavigate objects on an obstacle course. These projects introduce children to formal thinking procedures in the context of playful activities. There are many problems of this sort that children already know and like. A child thinks at first that he understands such problems perfectly because, with a little prodding, he can give a loose verbal description of his procedure. But he finds it impossible to make this description precise and general partly for lack of formal habits of thought and partly for lack of a suitably expressive language. The Logo environment provides students with an effective facility for actively constructing knowledge. Logo was expressly designed to embody the constructivist vision in mathematics, i.e. that learning is an active process of knowledge construction that gives rise to the production of publicly accessible artifacts. Here, they take the form of computer procedures that express the attempted solution of problems and that serve as a tangible means of thinking about and refining those solutions. Program descriptions are open to reflection and discussion, and procedures that fail can be examined, analyzed, and repaired. From the outset, Logo was intended to be a language for learning with ‘no threshold and no ceiling’. Later, when Papert took the Logo design as the basis of the MIT Logo Project, the language entered a period of further development and dissemination. Here, in the original Logo paper, you see the essence of the language and its generative ideas. Good reading!

Links and resources

Tags