CS 217: Programming Languages
Schedule (Tentative)

Boldfaced items are fairly fixed in place.
Non boldfaced items may shift depending on how the pace goes.

Day of Term Day of Week Date Topics Readings to be done in advance of this class
1 Monday 1/5 Scheme Assignment given
Introduction to course
Compilation and Interpretation
Pratt Chap. 1-2
2 Wednesday 1/7 Scheme lab
Scheme Assignment given
The Scheme Programming Language
Chapters 1-2
3 Friday 1/9 Scheme
Talk on FORTRAN

The Scheme Programming Language
Chapter 3.3

4 Monday 1/12 Scheme
Machine Architectures
Talk on ALGOL

Info on continuations
More info on continuations
Pratt Chapter 2

5 Wednesday 1/14

Machine Architectures
Talk on COBOL

Pratt Chapter 2
6 Friday 1/16 Language Translation Issues
Talk on APL

Pratt Chapter 3

7 Monday 1/19 Language Translation Issues
Talk on SNOBOL
Pratt Chapter 3
8 Wednesday 1/21 Scheme Assignment due
SML Assignment given
Written Assignment #1 given
SML Lab

A Gentle Introduction to ML, Lessons 1-8

9 Friday 1/23 SML
Talk on SIMULA
Pratt Appendix A.7
10 Monday 1/26 SML
 
11 Wednesday 1/28 Written Assignment #1 due
Elementary Data Types
Talk on BASIC
Pratt Chapter 5
12 Friday 1/30 Elementary Data Types
Encapsulation
Talk on PL/I

Pratt Chapters 5-6

13 Monday 2/2

Encapsulation
Talk on Pascal

Pratt Chapter 6
14 Wednesday 2/4 Exam 1

15 Friday 2/6 SML assignment due
Java assignment given
Java
Java for C++ Programmers (this page only)
  Monday 2/9 BREAK  
16 Wednesday 2/11
Java
Inheritance
Talk on Smalltalk
Pratt Appendix A.5
17 Friday 2/13 Inheritance
Sequence Control
Talk on Ada
Pratt Chapters 7-8
Pratt Chapter 7
18 Monday 2/16 Sequence Control
Talk on Postscript
Pratt Chapter 8
19 Wednesday 2/18

Subprogram Control
Talk on Visual Basic

Pratt Chapter 9
20 Friday 2/20

Java assignment due
Written Assignment #2 given
Subprogram Control
Storage Management
Talk on Perl

Pratt Chapters 9-10
21 Monday 2/23 Prolog assignment given
Prolog lab
Adventure in Prolog
22 Wednesday 2/25 Prolog
Talk on Python
Adventure in Prolog
23 Friday 2/27 Sequencing in Prolog
Written Assignment #2 due
Pratt Chapter 8.4
24 Monday 3/1 Storage Management
Talk on C#
Pratt Chapter 10
25 Wednesday 3/3 Storage Management
Pratt Chapter 10
26 Friday 3/5 Distributed Processing

Pratt Chapter 11

27 Monday 3/8 Distributed Processing
Network Programming
Pratt Chapters 11-12
28 Wednesday 3/10 Prolog assignment due  
Self-scheduled, or...
Monday
8:30-11:00 AM
3/15
Exam 2