CS 3 - Introduction to Symbolic Programming
Abbreviated Course Title
INTRO SYMBOLIC PROG
Instructors in Charge
Mike Clancy Senior Lecturer
Brian Harvey, Lecturer.
4 units; 2 hrs lecture, 1 hr discussion section, average of 6 hrs.
self-scheduled programming laboratory. Offered fall, spring, and
This course is a "Computer Science Service Course"; credit restrictions
appear at the beginning of the EECS section of the Berkeley General
High School algebra.
Introduction to computer programming, emphasizing symbolic computation
and functional programming style. Students will write a project of at
least 200 lines of code, in a dialect of the LISP programming
Topics covered are the following:
- Exploration: introduction to the course and to programming.
- Procedures and functions: evaluation, words and lists, functional
- Variables: data types, inputs to procedures and functions, scope
of variables, assignment.
- Predicates: conditional evaluation.
- Recursion (several models): linear- and tree-recursive operations.
- Planning and debugging.
- Functional operators.
- Other control structures, e.g. iteration, non-local exit.
- Other data structures, e.g. trees, hash tables, property lists,
- Programs as data.
One of the following:
Simply Scheme: Introducing Computer Science,
second edition, Brian Harvey and Matt Wright, MIT Press, 1999.
Exploring Computer Science with Scheme,
Oliver Grillmeyer, Springer-Verlag, 1998.