MIMOSA Research team
Migration and mobility : semantics and applications
- Leader : Gerard Boudol
- Research center(s) : CRI Sophia Antipolis - Méditerranée
- Field : Algorithmics, Programming, Software and Architecture
- Theme : Programs, Verification and Proofs
- Partner(s) : ENSMP
Team presentationThe overall objective of the Mimosa project is to design and study models of concurrent, distributed and mobile programming, to derive programming primitives from these models, and to develop methods and techniques for formal reasoning and verification, focusing on issues raised by the mobile code. More specifically, we develop a reactive approach, where concurrent components of a system react to broadcast events. We have implemented this approach in various programming languages, and we have integrated migration primitives in this reactive approach. In the past we also intensively studied models of mobility, like the π-calculus and its distributed variants, and the calculus of Mobile Ambients.
We investigate security issues like confidentiality and resource consumption, using static analysis methods (for the verification of non-interference of programs with respect to given security policies, and of computational complexity), with an emphasis on the issues related to concurrent and mobile code.
- Models and languages for reactive programming
We develop several implementations of the reactive approach, in various languages. We have designed, and still develop, an alternative to standard thread systems, called FairThreads. We study the integration of constructs for mobile code in the model of reactive programming.
- Functional languages
We develop several implementations of functional languages, mainly based on the Scheme programming language. Our studies focus on designing and implementing a platform for a distributed environment. All our developments on the web rest on these implementations.
- Web programming
We design and implement a programming environment for the web 2.0. It relies on a new distributed programming architecture where a program executes simultaneously on a server and a client. We aim at providing a realistic implementation that we constantly validate by developing and using end-users web applications.
International and industrial relations
- Alidecs project, ACI Sécurité Informatique
- CRE contract, Orange Labs
- Geocal, working group GDR Informatique Mathématique
- ParSec project, ANR Sécurité Informatique
- Standardisation group for the Scheme language.