Week |
Date |
Topic |
Book Chapter(s) |
Assignments |
1 |
Tue 01/08 |
Syllabus, Intro, Declarative Computing Model |
Ch 2 |
Read Ch 1 and 2 assigned |
|
Thu 01/10 |
Declarative Programming Techniques |
Ch 3 |
Read Ch 1 and 2 due, Read Ch 3 assigned |
2 |
Tue 01/15 |
Declarative Concurrency |
Ch 4 |
Read Ch 3 due, Three problems from 15 and 17 Jan notes assigned |
|
Thu 01/17 |
Declarative Concurrency |
|
|
3 |
Tue 01/22 |
Declarative Concurrency |
|
Three problems from 15 and 17 Jan notes due |
|
Thu 01/24 |
Declarative Concurrency |
|
Problems from 24 Jan notes assigned |
4 |
Tue 01/29 |
Message Passing Concurrency |
Ch 5 |
|
|
Thu 01/31 |
Class cancelled, university closed |
|
|
|
Sun 02/03 |
|
|
Problems from 24 Jan notes due |
5 |
Tue 02/05 |
Message Passing Concurrency |
Ch 5.3-5.5 |
Lift programming problem assigned |
|
Thu 02/07 |
Advanced MP Techniques, Erlang |
Ch 5.6.1 and 5.7 |
|
6 |
Tue 02/12 |
Erlang OTP PPT, in-class notes |
|
|
|
Thu 02/14 |
Explicit State Concurrency |
Ch 6 briefly then Ch. 8 |
|
7 |
Tue 02/19 |
Java Concurrency - Basic Mechanisms |
|
|
|
Thu 02/21 |
Programming with the basic mechanisms |
|
|
|
Sun 02/24 |
|
|
Lift programming problem due |
8 |
Tue 02/26 |
Safe publishing, exam review |
|
|
|
Thu 02/28 |
Mid-term exam |
|
|
9 |
Tue 03/04 |
Exam solutions, New Java Sync Primitives |
|
|
|
Thu 03/06 |
Concurrent ML Synchronous Communication |
|
Synchronous Communication Part 1 assigned |
|
Tue 03/11 |
Spring Break |
|
|
10 |
Tue 03/18 |
Final project topics discussion |
|
|
|
Thu 03/20 |
Non-blocking and wait-free algorithms |
|
|
|
Sun 03/23 |
|
|
Synchronous Communication Part 1 due, Sync. Comm. Part 2 assigned |
11 |
Tue 03/25 |
Transactions |
Section 8.5 |
|
|
Thu 03/27 |
Software Transactional Memory 1, (DSTM paper) |
|
|
|
Sun 03/30 |
|
|
Sync. Comm. Part 2 due, Sync. Comm. Part 3 assigned |
12 |
Tue 04/01 |
no class, instructor out of town |
|
|
|
Thu 04/03 |
Software Transactional Memory 2, (CMT paper) |
|
|
|
Sun 04/06 |
|
|
Sync. Comm. Part 3 due |
13 |
Tue 04/08 |
Toward parallel event-based synchronous communication, (Parallel CML paper |
|
|
|
Thu 04/10 |
Transactional Events Paper, Asynchronous Concurrency |
|
|
14 |
Tue 04/15 |
Concurrency Patterns, Using threads paper |
|
|
|
Thu 04/17 |
Concurrency Patterns |
|
|
15 |
Tue 04/22 |
student presentations, Undergrad Course Eval, Grad Course Eval |
|
|
|
Thu 04/24 |
student presentations |
|
|
|
Fri 05/02 |
Friday, 2 May, Final Exam 1:00-3:00PM |
|
|