20. – 22. Januar 1997, Dagstuhl-Seminar 97041

High-Level Concurrent Languages


K. Honda (Manchester), M. Odersky (Karlsruhe), B. Pierce (Bloomington), G. Smolka (DFKI-Saarbrücken), P. Wadler (Glasgow)

Auskunft zu diesem Dagstuhl-Seminar erteilt

Dagstuhl Service Team


Dagstuhl-Seminar-Report 164


Computer systems are undergoing a revolution. Twenty years ago, they were centralized, isolated, and expensive. Today, they are parallel, distributed, networked, and inexpensive. However, advances in software construction have failed to keep pace with advances in hardware. To a large extent, this is a consequence of the fact that current programming languages were conceived for sequential and centralized programming.

Challenged by this state of affairs, a number of concurrent programming languages have been designed. These include Erlang, concurrent versions of ML or Haskell, and languages explicitly designed for concurrency such as Obliq, Oz, or Pict. The motivations behind the design of these languages are rather diverse, ranging from constraint programming, the development of graphical user interfaces, and multi-agent systems, to real-time and distributed programming.

Programming models should be simple, practical, high-level, and well-founded. This enables rigorous language specifications and opens the possibility for formal reasoning about programs. In the last decade considerable progress has been made in the development of sequential programming models, notably the functional and logic ones. In contrast, the methodology and formal machinery for designing models for concurrent programming is still underdeveloped. Since the late 1980’s, however, it is rapidly evolving.

There have been three main lines of research, based on Hewitt’s actor model, process calculi in the tradition of Hoare’s CSP and Milner’s CCS, and logic programming. The actor model captures Hewitt’s early vision of concurrency as the most general form of computation and has been developed into various actor languages. Hoare and Milner suggest a model of concurrency based on channel communication. Different versions of concurrent constraint programming draw upon ideas from concurrent and constraint logic programming, and integrate elements from process calculi.

The three traditions have developed rather independently without much communication or cooperation between groups, although there is urgent technical need for such interaction. Furthermore, the combined know how of these groups has reached a point which opens the possibility to make some fundamental progress. The seminar is intended to bring together researchers involved in the design, development, foundations, and applications of high-level concurrent programming languages and models.


In der Reihe Dagstuhl Reports werden alle Dagstuhl-Seminare und Dagstuhl-Perspektiven-Workshops dokumentiert. Die Organisatoren stellen zusammen mit dem Collector des Seminars einen Bericht zusammen, der die Beiträge der Autoren zusammenfasst und um eine Zusammenfassung ergänzt.


Download Übersichtsflyer (PDF).

Dagstuhl's Impact

Bitte informieren Sie uns, wenn eine Veröffentlichung ausgehend von Ihrem Seminar entsteht. Derartige Veröffentlichungen werden von uns in der Rubrik Dagstuhl's Impact separat aufgelistet  und im Erdgeschoss der Bibliothek präsentiert.


Es besteht weiterhin die Möglichkeit, eine umfassende Kollektion begutachteter Arbeiten in der Reihe Dagstuhl Follow-Ups zu publizieren.