CSCI.4430 and CSCI.4220, or equivalent, or permission of instructor.
The student should be familiar with at least one high-level programming
language and basic network programming concepts. In particular, this course
will assume familiarity with Java and programming with TCP/IP sockets.
Knowledge of programming language semantics and lambda-calculus would be
helpful but is not mandatory.
| Date |
Topic |
Grade |
| 01/19 |
Course Overview. Introduction to Distributed Computing over the Internet Part I -- Models/Theory. |
|
| 01/23 |
Pi-Calculus - Introduction |
|
| 01/26 |
Pi-Calculus - Operational Semantics |
|
| 01/30 |
Pi-Calculus - Bisimilarity and Congruence |
|
| 02/02 |
Actors - Introduction |
|
| 02/06 |
Actors - Operational Semantics |
|
| 02/09 |
Actors - Expression Equivalence |
|
| 02/13 |
Mobile Ambients |
|
| 02/16 |
Join Calculus |
|
| 02/21 |
Partial Exam |
20% |
| 02/23 |
Introduction to Distributed Computing over the Internet Part II --
Programming Languages and Frameworks |
|
| 02/27 |
Python Objects, Concurrency, python-intro.ppt, 1.py, test_threading.py |
|
| 03/02 |
Python Networking and Distributed Computing
-- Programming Assignment 1 Due 03/05, python_dist.ppt
|
10% |
| 03/06 |
Oz Concurrency, oz-concurrency.ppt, 1.oz |
|
| 03/09 |
Distributed Oz, oz-distributed.ppt, 2.oz -- Programming Assignment 2 Due 03/22 |
10% |
| 03/20 |
No lecture |
|
| 03/23 |
No lecture |
|
| 03/27 |
SALSA Concurrency, salsa-concurrency.ppt, HelloWorld.salsa, Fibonacci.salsa |
|
| 03/30 |
SALSA Distribution and Mobility, salsa-wwc.ppt, Migrate.salsa -- Programming Assignment 3 Due 04/09 |
10% |
| 04/03 |
Objective CAML, ocaml.pdf |
|
| 04/06 |
JOCAML, jocaml.pdf -- Programming Assignment 4 Due 04/19 |
10% |
| 04/10 |
Introduction to Distributed Computing over the Internet Part III --
Research Topics -- Selected Paper Critiques and Presentations
by Students |
10% |
| 04/13 |
|
| 04/17 |
|
| 04/20 |
|
| 04/24 |
No lecture |
|
| 04/27 |
Final Project Presentations |
25% |
| 05/01 |
|
Class Participation |
5% |
Please contact the instructor if there is any question about academic
(dis)honesty.