CS 373 Programming Language Structures

Lectures: 12:40-1:40 PM MWF, Olin 305
Instructor: Peter Drake, drake at lclark.edu, BoDine 307, x7539
Texts: Friedman and Felleisen, The Little Schemer (4th edition); Friedman, Wand, and Haynes, Essentials of Programming Languages (2nd edition)
Mailing list: 04sp-cs-373-01@lclark.edu
Course Policies

Overview

In this course, we will explore how different programming languages approach computation.

Topics include:

We will read The Little Schemer first, to introduce you to the syntax and philosophy of the functional Scheme language. All of the assignments in this course (except the final project) will be done in Scheme, which is an excellent language for writing interpreters. As we work through Essentials of Programming Languages (probably chapters 1-7), we will develop interpreters for various kinds of languages. We will see how subtle changes in these interpreters can drastically change the semantics of the interpreted language.

Grading

Due Date Score Item
27 Jan 100 Assignment 1
3 Feb 100 Assignment 2
13 Feb 200 Exam 1
17 Feb 100 Assignment 3
24 Feb 100 Assignment 4
2 Mar 100 Assignment 5
12 Mar 200 Exam 2
16 Mar 100 Assignment 6
20-28 Mar Spring Break
6 Apr 100 Assignment 7
9 Apr 200 Exam 3
15 Apr 100 Assignment 8
27 Apr 300 Final Project
5 May,
8:30-11:30 AM
Final Project Presentations
1700 Total

See the course policies page for more on grading.

Resources


Peter Drake Last modified: Tue Apr 27 17:06:50 PDT 2004