Reactivity of Cooperative Systems: Application to ReactiveML -- extended version

Louis Mandel 1 Cédric Pasteur 1
1 Parkas - Parallélisme de Kahn Synchrone
DI-ENS - Département d'informatique de l'École normale supérieure, Inria Paris-Rocquencourt, CNRS - Centre National de la Recherche Scientifique : UMR 8548
Abstract : Cooperative scheduling enables efficient sequential implementations of concurrency. It is widely used to provide lightweight threads facilities as libraries or programming constructs in many programming languages. However, it is up to programmers to actually cooperate to ensure the reactivity of their programs. We present a static analysis that checks the reactivity of programs by abstracting them into so-called behaviors using a type-and-effect system. Our objective is to find a good compromise between the complexity of the analysis and its precision for typical reactive programs. The simplicity of the analysis is mandatory for the programmer to be able to understand error messages and how to fix reactivity problems. Our work is applied and implemented in the functional synchronous language ReactiveML. It handles recursion, higher-order processes and first-class signals. We prove the soundness of our analysis with respect to the big-step semantics of the language: a well-typed program with reactive effects is reactive. The analysis is easy to implement and generic enough to be applicable to other models of concurrency such as coroutines. This research report is the extended version of the article published at the 21st International Static Analysis Symposium.
Document type :
Reports
Liste complète des métadonnées

Cited literature [32 references]  Display  Hide  Download

https://hal.inria.fr/hal-01010349
Contributor : Louis Mandel <>
Submitted on : Thursday, June 19, 2014 - 3:44:50 PM
Last modification on : Thursday, February 7, 2019 - 3:49:36 PM
Document(s) archivé(s) le : Friday, September 19, 2014 - 11:16:36 AM

File

RR-8549.pdf
Files produced by the author(s)

Identifiers

  • HAL Id : hal-01010349, version 1

Collections

Citation

Louis Mandel, Cédric Pasteur. Reactivity of Cooperative Systems: Application to ReactiveML -- extended version. [Research Report] RR-8549, INRIA. 2014, pp.29. 〈hal-01010349〉

Share

Metrics

Record views

342

Files downloads

245