CS 217: Programming Languages
Tentative Schedule
Day of Term Day of Week Date Topics Readings in advance Assignments
1 Monday 3/27 Introduction to course, Compilation and Interpretation Scott Chapter 1  
2 Tuesday 3/28 Scheme lab The Scheme Programming Language Chapters 1-2 Introduction Assignment due, Scheme lab part 2 #2 due
3 Wednesday 3/29 Scheme    
4 Monday 4/3 Scheme The Scheme Programming Language Chapter 3.3 Scheme lab part 6 #4 due, Scheme warmup due
5 Wednesday 4/5 Programming Language Syntax; Names, Scopes and Bindings Scott Chapter 10, Scott Chapter 2.1, Scott Chapter 3 Scheme Binary Search Trees due
6 Friday 4/7 Names, Scopes, and Bindings Scott Chapter 3 Scheme Lazy Lists due
7 Monday 4/10 Names, Scopes, and Bindings Scott Chapter 3 Scheme Converting Numbers to Words due
8 Wednesday 4/12 Names, Scopes, and Bindings; Control Flow Scott Chapter 3, Scott Chapter 6 Scheme Set Operations due
9 Friday 4/14 Control Flow Scott Chapter 6  
10 Monday 4/17 Control Flow Scott Chapter 6 Scheme Sieve due
11 Wednesday 4/19 Control Flow; Data Types Scott Chapter 6, Scott Chapter 7 Scheme Currying due
12 Friday 4/21 Talks on Four Languages   Written Assignment #1 due in class
13 Monday 4/24 Data Types Scott Chapter 7 Scheme Mergesort due
14 Wednesday 4/26 Exam 1    
15 Friday 4/28 Slack   Scheme Memoization due
  Monday 5/1 BREAK    
16 Wednesday 5/3 Java; Data Abstraction and Object Orientation Scott Chapter 9 Scheme Nested Sets due
17 Friday 5/5 Java; Data Abstraction and Object Orientation Scott Chapter 9 Java warmup (optional)
18 Monday 5/8 Data Abstraction and Object Orientation Scott Chapter 9 Java Sorting due
19 Wednesday 5/10 Data Abstraction and Object Orientation; Data Types Scott Chapter 9, Scott Chapter 7  
20 Friday 5/12 Subroutines and Control Abstraction Scott Chapter 8 Java Sieve due
21 Monday 5/15 Prolog lab Adventure in Prolog Written Assignment #2 due
22 Wednesday 5/17 Prolog Adventure in Prolog Prolog lab due
23 Friday 5/19 Prolog Scott Chapter 11 Prolog warmup due
24 Monday 5/22 Subroutines and Control Abstraction Scott Chapter 8 Prolog Median due
25 Wednesday 5/24 Subroutines and Control Abstraction Scott Chapter 8 Prolog Send More Money due
26 Friday 5/26 Lambda Calculus Scott Chapter 10.6 (on CD) Prolog Subsets due
27 Monday 5/29 Lambda Calculus Scott Chapter 10.6 (on CD)  
28 Wednesday 5/31 Slack   Prolog Set Equality due
Self-scheduled     Exam 2