Language Semantics, Mental Models and Analogy

Abstract The semantics of a number of programming languages is related to the operation of a computer device. Learning a programming language is considered here from the point of view of learning the operating rules of the processing device that underlies the language, as a complement to the learning of new notations, or a new means of expression to be compared to natural language. This acquisition leads beginners to elaborate a new representation and processing system (RPS) by analogy with other systems that are associated to well-known devices. During acquisition, beginners not only learn new basic operations but also the constraints of these operations upon program structures. Learning therefore concerns a basic problem space as well as abstract problem spaces within which planning takes place. The links between this approach to learning to program and a number of related works on learning to use software are underlined. Implications of these research findings in the programmer training are drawn.

[1]  Elliot Soloway,et al.  Preprogramming Knowledge: A Major Source of Misconceptions in Novice Programmers , 1985, Hum. Comput. Interact..

[2]  Renan Samurcay Learning Programming: An Analysis of Looping Strategies Used by Beginning Students. , 1985 .

[3]  Richard M. Young,et al.  The Machine Inside the Machine: Users' Models of Pocket Calculators , 1981, Int. J. Man Mach. Stud..

[4]  Richard E. Mayer,et al.  Some Conditions of Meaningful Learning for Computer Programming: Advance Organizers and Subject Control of Frame Order. , 1976 .

[5]  Lance A. Miller Programming by Non-Programmers , 1974, Int. J. Man Mach. Stud..

[6]  David Klahr,et al.  Dual Space Search During Scientific Reasoning , 1988, Cogn. Sci..

[7]  John M. Carroll,et al.  Training wheels in a user interface , 1984, CACM.

[8]  Thomas P. Moran,et al.  The Command Language Grammar: A Representation for the User Interface of Interactive Computer Systems , 1981, Int. J. Man Mach. Stud..

[9]  K. Holyoak,et al.  Schema induction and analogical transfer , 1983, Cognitive Psychology.

[10]  Richard E. Mayer,et al.  The Psychology of How Novices Learn Computer Programming , 1981, CSUR.

[11]  Donald A. Norman,et al.  Some observations on mental models , 1987 .

[12]  John R. Anderson,et al.  Learning to Program in LISP , 1984, Cogn. Sci..

[13]  Willemien Visser,et al.  Programmation d'automates industriels : Adaptation par des débutants d'une méthode de spécification de procédures automatisées , 1987 .

[14]  N. M. Morris,et al.  On Looking into the Black Box: Prospects and Limits in the Search for Mental Models , 1986 .

[15]  J. Carbonell Learning by Analogy: Formulating and Generalizing Plans from Past Experience , 1983 .

[16]  Carl Martin Allwood,et al.  Analogy and Other Sources of Difficulty in Novices' Very First Text-Editing , 1987, Int. J. Man Mach. Stud..

[17]  Edward A. Youngs Human Errors in Programming , 1974, Int. J. Man Mach. Stud..

[18]  Moshe Burstein,et al.  Concept formatio n by incremental analogica l reasoning and debugging , 1983 .

[19]  H A Simon,et al.  The theory of learning by doing. , 1979, Psychological review.

[20]  Jean-Michel Hoc Role of Mental Representation in Learning a Programming Language , 1977, Int. J. Man Mach. Stud..

[21]  R. Mayer Different problem-solving competencies established in learning computer programming with and without meaningful models. , 1975 .

[22]  David Klahr,et al.  Instructionless Learning about a Complex Device: The Paradigm and Observations , 1986, Int. J. Man Mach. Stud..

[23]  Patrick Mendelsohn Activation de schèmes de programmation et mémorisation de figures géométriques , 1986 .

[24]  Stephen J. Payne,et al.  Task-Action Grammars: A Model of the Mental Representation of Task Languages , 1986, Hum. Comput. Interact..

[25]  Yvonne Waern Learning computerized tasks as related to prior task knowledge , 1985 .

[26]  Kirk H. Smith,et al.  Training by Exploration: Facilitating the Transfer of Procedural Knowledge Through Analogical Reasoning , 1986, Int. J. Man Mach. Stud..

[27]  Richard E. Mayer,et al.  Instructional Manipulation of Users' Mental Models for Electronic Calculators , 1984, Int. J. Man Mach. Stud..

[28]  K. Holyoak,et al.  Analogical problem solving , 1980, Cognitive Psychology.

[29]  John R. Anderson,et al.  Learning to Program in LISP , 1984, Cogn. Sci..