Overall Objectives
Application Domains
New Results
Contracts and Grants with Industry
Other Grants and Activities

Section: New Results

Languages and Compilation Techniques

Compilation of LOTOS

Participants : David Champelovier, Hubert Garavel, Wendelin Serwe.

The Cadp toolbox contains several tools dedicated to the Lotos language, namely: the Cæsar.adt compiler  [2] for the data type part of Lotos , the Cæsar compiler  [10] for the process part of Lotos , and the Cæsar.Indent pretty-printer.

In 2005, we performed maintenance activities for these tools (1 bug fixed in Cæsar.adt , 1 bug fixed in Cæsar , and 3 bugs fixed in Cæsar.Indent ) and we improved the C code generated by Cæsar and Cæsar.adt to avoid warnings emitted by the most recent C compilers. We also enhanced the Cæsar compiler in two ways:

Compilation of E-LOTOS

Participants : David Champelovier, Hubert Garavel, Frédéric Lang.

As regards the E-Lotos language — and, more specifically, its Lotos NT variant elaborated by the Vasy team — we worked in two directions:

Source-Level Translations between Process Algebras

Participants : Hubert Garavel, Gwen Salaün, Wendelin Serwe.

Although process algebras are, from a technical point of view, the best formalism to describe concurrent systems, they are not used as widely as they could be. Besides the steep learning curve of process algebras, which is traditionally mentioned as the main reason for this situation, it seems also that the process algebra community scattered its efforts by developing too many languages, similar in concept but incompatible in practice. Even the advent of two international standards, such as Lotos (in 1989) and E-Lotos (in 2001), did not remedy this fragmentation.

To address this problem, we started investigating source-level translators from various process algebras into Lotos , so as to widen the applicability of the Cadp tools. One first example is the aforementioned translator from Lotos NT to Lotos (see §  6.2.2 ). In 2005, we have also been studying translators for two other process algebras:


Logo Inria