[CS Dept logo]

Com Sci 221/321
Programming Languages
Autumn 1999

A course in the
[back] Department of Computer Science
[] The University of Chicago

News Flash: Online discussion using HyperNews


Copyright information

Last modified: Mon Jan 3 09:54:42 CST 2000

Catalog Description

Programming language design aims at the closest possible correspondence between the structures of a program and of the problem that it solves. This course studies some of the structural concepts affecting programming languages --- iterative and recursive control flow, data types and type checking, procedural vs. functional programming, modularity and encapsulation, fundamentals of interpreting and compiling, formal descriptions of syntax and semantics. Students will write short programs in a number of radically different languages to illuminate the variety of possible designs.

Required Text: Programming Languages: Concepts and Constructs, by Ravi Sethi, 2nd edition.

There are at least three different printings of the 2d edition: September 1995, February 1996, and April 1997. It is important to get the 2d edition, rather than the 1st, but I don't know how much difference there is between printings. According to the head matter, there were some corrections. The books in stock at the campus bookstore are the latest (known) printing, but they are also the most expensive.

The text is in stock at the campus bookstore ($75 April 1997 printing). You may also order it online from Amazon ($51.95, February 1996 printing), Barnes & Noble online ($72.75, September 1995 printing), or other book vendors.

Class Resources

  • Getting Started
  • Students in the class
  • Course Information
  • 3 Crucial Points So You Won't Feel Like This [BLEAH]
  • Lecture Notes and Schedule
  • Homework Assignments
  • Exams
  • Computing Resources
  • Online Discussion
  • Archive of Previous Quarters' Homeworks and Exams
  • Previous versions of the course

  • Maintained by
    Michael J. O'Donnell, email: [] odonnell@cs.uchicago.edu