
____________________________________________________________

TO DO

- fix notes
- plan lab sessions

* 3. Liveness: add example of multiple put & get threads
  to illustrate problems with notify() vs. notifyAll()

____________________________________________________________

	Topics
	======

- Introduction
- History, overview of languages
  - concurrency mechanisms in PLs
- Safety and Liveness
- Deadlock
  - dining philosphers (multiple solutions)
  - readers/writers
- Concurrent programming in Java
- Design Patterns for CP
- Transactions
- Linda
- Formal Models of Concurrency
  - proof techniques (Andrews ...)
  - Petri nets
  - Pi Calculus
- JavaPict
- Example programs ...
- Distributed Programming
- Coordination Languages

Sander: talk on coordination components

From cruz  Thu Aug 14 10:00:11 1997
Date: Thu, 14 Aug 1997 10:00:11 +0200
From: cruz (Juan Carlos Cruz)
To: oscar
Subject: Lectures
Cc: cruz

Some ideas..

1) Design Space of Concurrent Object Oriented Languages:
   The idea is to present resume of Papathomas/Rachid Paper, this
   could be an introduction to 2)

2) ATOM an active object model for the development of Concurrent Software:
   The idea is to study one language with some examples.

3) Coordination Patterns in Concurrent Object Oriented Programming:
   Importance of Coordination + Presentation of some problems and patterns.

4) Software Styles in Concurrent Object Oriented Programming:
   I will use the second part of Andrews book: filters, clients/servers,
   etc.

5) An Introduction to Formal Specification and Verification of Concurrent
   Systems: This is more complicate but very important. I have one book
   and my course's note from Grenoble.

____________________________________________________________

