Harvard SEAS Logo

CS 152: Programming Languages


  Course information
  Course policies
  Lectures/schedule
  Assignments

CS 152: Programming Languages

Prof. Stephen Chong
Spring 2010

Lectures: Tuesdays and Thursdays, 10:00am-11:30am.
Location: 60 Oxford St, Rm 330.



Announcement 11-Mar: The term paper has been released. It is due on the last day of the semester.

Announcement 23-Feb: The midterm has been moved to March 23, the first class after spring recess.

Announcement 10-Feb: Lecture notes for lectures 1, 3, and 4 have been updated with clarifications, and fixes to typos.

Course information

This course provides an introduction to the formal semantics of programming languages: it provides tools and techniques for understanding the meaning of programs. Such tools allow us to answer questions about the correctness of programs, program analyses, and program transformations, and to understand some of the issues and complexities of programming language design. These questions and issues include the following.

Topics covered in this course include:

See the lecture schedule for more detailed information on topics covered.

Course staff

Time and place

Tuesdays and Thursdays, 10:00am-11:30am, 60 Oxford St, Rm 330.

Prerequisites

Computer Science 51. Also recommended is Computer Science 121. Students must have good programming skills, be comfortable with recursion, basic mathematical ideas and notations. Feel free to contact the instructor if you have questions about the requirements or other aspects of the course.

Homeworks, exams, and grading

Your grade will be determined by a weighted average of your scores on homework assignments, the term paper, the midterm exam, the final exam, and class participation. The percentage breakdown (roughly and subject to change) is 40% homework assignments, 10% term paper, 20% midterm, 25% final exam, and 5% participation.

Textbooks

There is no required textbook for this course. However, most of the material in this course can be found in the following books, all of which are either available electronically, or are on reserve at the library.

Lectures/schedule

See here for more information.

Assignments

See here for more information.

Late penalties, collaboration, and other course policies

See here for more information.