Emilio's web page

Principles of Concurrent and Distributed Programming

Academic year 2025/26

Advanced course
Lecturer: Rocco De Nicola, CNR Pisa and GSSI
This course introduces models of concurrent and distributed programming. The course will explore this topic presenting different paradigms of coordination of concurrent and distributed systems (including shared-memory, message-passing, and tuple spaces) as well as related linguistic constructs. The theoretical underpinning will be reinforced by showing how popular programming languages feature concurrency as well as experimental prototype languages. The exam modality will be a group mini-project.

Lecture notes:

All the slides in a single file

Further readings:

Zoom recordings:

Programming examples

The “promotion” example