2017
DOI: 10.7494/csci.2017.18.3.1413
|View full text |Cite
|
Sign up to set email alerts
|

Type-Driven Development of Concurrent Communicating Systems

Abstract: Modern software systems rely on communication; for example, mobile applications communicating with a central server, distributed systems coordinating a telecommunications network, or concurrent systems handling events and processes in a desktop application. However, reasoning about concurrent programs is hard since we must reason about each process and the order in which communication might happen between processes. In this paper, I describe a type-driven approach to implementing communicating concurrent progr… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
1
1
1
1

Citation Types

0
18
0

Year Published

2017
2017
2022
2022

Publication Types

Select...
5
4

Relationship

1
8

Authors

Journals

citations
Cited by 21 publications
(18 citation statements)
references
References 23 publications
0
18
0
Order By: Relevance
“…While linear types avoid duplication and dropping of values, a value with unique type is referenced at most once at run time. Brady [2017] shows how to use this feature combination to develop concurrent systems.…”
Section: Related Workmentioning
confidence: 99%
“…While linear types avoid duplication and dropping of values, a value with unique type is referenced at most once at run time. Brady [2017] shows how to use this feature combination to develop concurrent systems.…”
Section: Related Workmentioning
confidence: 99%
“…Idris [Brady 2013] features uniqueness types, which have been used, in particular, to enforce communication protocols [Brady 2017]. Uniqueness types, in Idris, are being replaced by linear types based on qtt [Atkey 2017], a variant of McBride [2016].…”
Section: Uniqueness and Ownership Typingmentioning
confidence: 99%
“…Taking inspiration from Multi-Party Session Types we have been investigating how dependent types, as presented in Idris, can be used to design, implement, and reason about communicating systems. Existing work has presented a type-driven approach for designing and developing communicating concurrent systems [11]. A limitation in this work is not being able to specify value-dependencies on messages for multi-party protocols.…”
Section: Contributionsmentioning
confidence: 99%