Home > Research > Publications & Outputs > Cooperative decoupled processes

Links

Text available via DOI:

View graph of relations

Cooperative decoupled processes: the e-calculus and linearity

Research output: Contribution in Book/Report/Proceedings - With ISBN/ISSNConference contribution/Paperpeer-review

Published

Standard

Cooperative decoupled processes: the e-calculus and linearity. / Bejleri, Andi; Mezini, Ermira; Eugster, Patrick.
MODULARITY 2016 Proceedings of the 15th International Conference on Modularity. New York: ACM, 2016. p. 82-93.

Research output: Contribution in Book/Report/Proceedings - With ISBN/ISSNConference contribution/Paperpeer-review

Harvard

Bejleri, A, Mezini, E & Eugster, P 2016, Cooperative decoupled processes: the e-calculus and linearity. in MODULARITY 2016 Proceedings of the 15th International Conference on Modularity. ACM, New York, pp. 82-93. https://doi.org/10.1145/2889443.2889449

APA

Bejleri, A., Mezini, E., & Eugster, P. (2016). Cooperative decoupled processes: the e-calculus and linearity. In MODULARITY 2016 Proceedings of the 15th International Conference on Modularity (pp. 82-93). ACM. https://doi.org/10.1145/2889443.2889449

Vancouver

Bejleri A, Mezini E, Eugster P. Cooperative decoupled processes: the e-calculus and linearity. In MODULARITY 2016 Proceedings of the 15th International Conference on Modularity. New York: ACM. 2016. p. 82-93 doi: 10.1145/2889443.2889449

Author

Bejleri, Andi ; Mezini, Ermira ; Eugster, Patrick. / Cooperative decoupled processes : the e-calculus and linearity. MODULARITY 2016 Proceedings of the 15th International Conference on Modularity. New York : ACM, 2016. pp. 82-93

Bibtex

@inproceedings{76788b960ae64751879a23c25c73814b,
title = "Cooperative decoupled processes: the e-calculus and linearity",
abstract = "Event-driven programming has become a major paradigm in developing concurrent, distributed systems. Its benefits are often informally captured by the key tenet of “decoupling”, a notion which roughly captures the ability of modules to join and leave (or fail) applications dynamically, and to be developed by independent parties. Programming models for event-driven programming either make it hard to reason about global control flow, thus hampering sound execution, or sacrifice decoupling to aid in reasoning about control flow. This work fills the gap by introducing a programming model – dubbed cooperative decoupled processes – that achieves both decoupling and reasoning about global control flow. We introduce this programming model through an event calculus, loosely inspired by the Join calculus, that enables reasoning about cooperative decoupled processes through the concepts of pre- and postconditions. A linear type system controls aliasing of events to ensure uniqueness of control flow and thus safe exchange of shared events. Fundamental properties of the type system such as subject reduction, migration safety, and progress are established.",
author = "Andi Bejleri and Ermira Mezini and Patrick Eugster",
year = "2016",
month = mar,
day = "14",
doi = "10.1145/2889443.2889449",
language = "English",
isbn = "9781450339957",
pages = "82--93",
booktitle = "MODULARITY 2016 Proceedings of the 15th International Conference on Modularity",
publisher = "ACM",

}

RIS

TY - GEN

T1 - Cooperative decoupled processes

T2 - the e-calculus and linearity

AU - Bejleri, Andi

AU - Mezini, Ermira

AU - Eugster, Patrick

PY - 2016/3/14

Y1 - 2016/3/14

N2 - Event-driven programming has become a major paradigm in developing concurrent, distributed systems. Its benefits are often informally captured by the key tenet of “decoupling”, a notion which roughly captures the ability of modules to join and leave (or fail) applications dynamically, and to be developed by independent parties. Programming models for event-driven programming either make it hard to reason about global control flow, thus hampering sound execution, or sacrifice decoupling to aid in reasoning about control flow. This work fills the gap by introducing a programming model – dubbed cooperative decoupled processes – that achieves both decoupling and reasoning about global control flow. We introduce this programming model through an event calculus, loosely inspired by the Join calculus, that enables reasoning about cooperative decoupled processes through the concepts of pre- and postconditions. A linear type system controls aliasing of events to ensure uniqueness of control flow and thus safe exchange of shared events. Fundamental properties of the type system such as subject reduction, migration safety, and progress are established.

AB - Event-driven programming has become a major paradigm in developing concurrent, distributed systems. Its benefits are often informally captured by the key tenet of “decoupling”, a notion which roughly captures the ability of modules to join and leave (or fail) applications dynamically, and to be developed by independent parties. Programming models for event-driven programming either make it hard to reason about global control flow, thus hampering sound execution, or sacrifice decoupling to aid in reasoning about control flow. This work fills the gap by introducing a programming model – dubbed cooperative decoupled processes – that achieves both decoupling and reasoning about global control flow. We introduce this programming model through an event calculus, loosely inspired by the Join calculus, that enables reasoning about cooperative decoupled processes through the concepts of pre- and postconditions. A linear type system controls aliasing of events to ensure uniqueness of control flow and thus safe exchange of shared events. Fundamental properties of the type system such as subject reduction, migration safety, and progress are established.

U2 - 10.1145/2889443.2889449

DO - 10.1145/2889443.2889449

M3 - Conference contribution/Paper

SN - 9781450339957

SP - 82

EP - 93

BT - MODULARITY 2016 Proceedings of the 15th International Conference on Modularity

PB - ACM

CY - New York

ER -