EECS C25-2
Artificial Intelligence Programming

Professor: Christopher K. Riesbeck

Office: Room 328, The Institute for the Learning Sciences (ILS), 1890 Maple Avenue (corner Maple and Emerson).

Office hours: 9 am -- 5 am, by appointment.

Phone: (708) 491-7279



Required text:
Artificial Intelligence Programming, 2nd ed., by Charniak, Riesbeck, McDermott and Meehan.
Recommended text:
Paradigms in Artificial Intelligence Programming by Peter Norvig
FTP area for Lisp code: pub/c25/
Lecture notes:

Programming Language

Common Lisp with CLOS (Common Lisp Object System)

Candidates: Macintosh Common Lisp 2.0, Allegro Common Lisp for PC's, Kyoto Common Lisp with PCL, CLISP for PC's with PCL

What this course is about

Lisp programming techniques and tools:
macros, data-driven programming, functional programming, object-oriented programming, debugging tools
AI programming techniques:
backtracking, (extensible, compilable) pattern matchers, deductive retrieval


All work should be submitted by email to Only working code should be submitted.

Code will be critiqued, not graded. Your grade will be based on how much you do and how much you've learned.

There is a project, but no final.


The default project is to build a modular GBS (Goal-based Scenario) engine.

A Lisp project for another course/project may be used, but approval must be obtained first.