This paper concerns formal models for the analysis of communication-centric software systems that feature declarative and reactive behaviors. We focus on session-based concurrency, the interaction model induced by session types, which uses (variants of) the Π-calculus as specification languages. While well-established, such process models are not expressive enough to specify declarative and reactive behaviors common in emerging communication-centric software systems. Here we propose the synchronous reactive programming paradigm as a uniform foundation for session-based concurrency. We present correct encodings of sessionbased calculi into ReactiveML, a synchronous reactive programming language. Our encodings bridge the gap between process specifications and concurrent programs in which session-based concurrency seamlessly coexists with declarative, reactive, timed, and contextual behaviors.

doi.org/10.1007/978-3-319-60225-7_6
Lecture Notes in Computer Science/Lecture Notes in Artificial Intelligence
International Conference on Formal Techniques for Distributed Objects, Components, and Systems

Cano, M., Arias, J., & Pérez Parra, J. (2017). Session-based concurrency, reactively. In FORTE 2017: Formal Techniques for Distributed Objects, Components, and Systems (pp. 74–91). doi:10.1007/978-3-319-60225-7_6