Message passing programming idioms alleviate the burden of reasoning about implicit program interactions that can lead to deadlock or race conditions by explicitly defining the interactions between threads and modules. This simplicity comes at the cost of having to reason about global protocols that span multiple interacting threads and software components. Reasoning about a given thread or component requires reasoning about potential communication partners and protocols in which the thread participates. Therefore, building modular yet composable communication abstractions is challenging. In this dissertation we present three language abstractions for building robust and efficient communication protocols. We show how such language abstracti...
Object-Oriented concurrency model has been recognized as good programming paradigm in concurrent and...
AbstractIdealized CSP is a programming language combining simply typed, call-by-name procedures with...
Concurrent programming is a useful technique for structuring many important classes of applications...
Abstraction concepts based on process groups have largely dominated the design and implementation of...
. We introduce basic language constructs and a type discipline as a foundation of structured communi...
We develop a general framework for a variety of concurrent languages all b sed on a yn-chronous comm...
This thesis explores two strategies for supporting the development of network communication software...
How will programmers respond to the long-promised con-currency revolution, which now appears both in...
This thesis investigates the power of a Scheme implementation extended with processes using an async...
AbstractIn this paper we try to answer the following questions: Is it possible to program solely at ...
Distributed protocols, typically expressed as stateful agents communicating asynchronously over buff...
Communication protocols are central to engineering decentralized multiagent systems. Modern protocol...
Understanding distributed computing is not an easy task. This is due to the many facets of uncertain...
Inference rules are derived for proving partial correctness of concurrent programs that use message...
We present the design of a small number of application level communication coordination constructs ...
Object-Oriented concurrency model has been recognized as good programming paradigm in concurrent and...
AbstractIdealized CSP is a programming language combining simply typed, call-by-name procedures with...
Concurrent programming is a useful technique for structuring many important classes of applications...
Abstraction concepts based on process groups have largely dominated the design and implementation of...
. We introduce basic language constructs and a type discipline as a foundation of structured communi...
We develop a general framework for a variety of concurrent languages all b sed on a yn-chronous comm...
This thesis explores two strategies for supporting the development of network communication software...
How will programmers respond to the long-promised con-currency revolution, which now appears both in...
This thesis investigates the power of a Scheme implementation extended with processes using an async...
AbstractIn this paper we try to answer the following questions: Is it possible to program solely at ...
Distributed protocols, typically expressed as stateful agents communicating asynchronously over buff...
Communication protocols are central to engineering decentralized multiagent systems. Modern protocol...
Understanding distributed computing is not an easy task. This is due to the many facets of uncertain...
Inference rules are derived for proving partial correctness of concurrent programs that use message...
We present the design of a small number of application level communication coordination constructs ...
Object-Oriented concurrency model has been recognized as good programming paradigm in concurrent and...
AbstractIdealized CSP is a programming language combining simply typed, call-by-name procedures with...
Concurrent programming is a useful technique for structuring many important classes of applications...