Using Scheme in the introductory computer science curriculum (abstract)

Panelists will discuss the various aspects of using the SCHEME programming language as a tool for the instruction of computer science concepts in an introductory computer science course. This approach has been used both experimentally and on a regular basis at institutions in the United States and Europe focusing on the technologies for coping with the complexity of organization of large-scale software systems, as a reflection of general principles of software design. The course develops three basic means for decomposing difficult problems: building abstraction hierarchies, establishing conventional interfaces, and moving to new levels of linguistic description. There is significant laboratory work completed in the course using the SCHEME dialect of the programming language LISP, including such topics as modeling physical phenomena, event-based simulation, interpreters and compilers, and logic programming. The goal of the course is not to teach a programming language, but rather to explore important general principles of programming style using a number of the novel features of SCHEME. The members of the panel are nationally known faculty who are experienced in instruction and curriculum development using SCHEME, as well as authors of several well-known texts in this field. The session will include a brief presentation by each panel member followed by a discussion period in which conference attendees will be invited to ask questions and/or make comments.