ECS 240: Programming Languages
Winter 2003


Administrative Details

 
  Instructor

Teaching Assistant

Personnel Raju Pandey Earl Barr
Office Location 3041 EU II To be announced
Office Hours Tu/Th  1:45 - 3:00 PM W 10:00 - 12:00


Textbooks, Lecture notes, Reading, and Due-Date Schedule

 

Week

Date

Topic

Homework

 

1

7th Jan

Overview/Introduction
Assigned reading:

 

9

Unit I

Lambda calculus

Hw 1 handout

2

14

 

16

Unit II

Scheme + Interpreters (Handout #1; Handout #2)

Project I handout

3

21

Hw1 due

23

 

4

28

Unit III

Language runtime environment: (VM; Allocator; Garbage Collector)

Project I: part 1 due

30

 

5

4th Feb.

Project I: part 2 due

6th

 

Midterm

 

6

11

Unit IV

Programming abstractions

Project II Handout

13

 

7

18

Project I: part 3 due

20

Unit I

Type Systems

 

Project III Handout

8

25

Project II due

27

Unit I

Introduction to Programming language semantics (Denotational Semantics)

 

9

4th March

Final project handout
Homework 2 due

6

Project III due

10

11

 

13

 

Summary

Final project due

Homework 3 due

11

19

 

Final: 8:00 – 10:00 AM.

 


Homeworks and Projects

 
Homework Due date Extra handouts
Hw1 1/21/03 Solution
Project 1 Handout Part 1: 11:59 PM, 1/28/03
Part 2: 11:59 PM, 2/4/03
Part 3: 11:59 PM, 2/21/03

Lex file; Scheme-- EBNF
Handin Directions
Hints: 1; Test Programs: 1; Handin Directions

Project 2 Handout Part 1: 11:59 PM, 2/27/03 Handin Directions; C++ Hint
Project 3 Handout 11:59 PM, 3/11/03
Project 4 Handout 11:59 PM, 3/11/03
Demo Schedule


Exams and Tests

  Midterm: 2/6/2003 (midterm solution)

Final: 3/19/2003; 8:00 - 10:00 AM.


Grades

 
Sorted by ID


Resources

 

Interesting readings:

  • Growing a language, Guy L. Steele. Invited Talk at Conference on Object-Oriented Programming, Systems, Languages, and Applications on Addendum to the 1998 proceedings. October 18 - 22, 1998, Vancouver Canada

Scheme:

Java:

C++

LEX/YACC