Network


Latest external collaboration on country level. Dive into details by clicking on the dots.

Hotspot


Dive into the research topics where Bruno Pagano is active.

Publication


Featured researches published by Bruno Pagano.


embedded software | 2005

A conservative extension of synchronous data-flow with state machines

Jean-Louis Colaço; Bruno Pagano; Marc Pouzet

This paper presents an extension of a synchronous data-flow language such as Lustre with imperative features expressed in terms of powerful state machine à la SyncChart. This extension is fully conservative in the sense that all the programs from the basic language still make sense in the extended language and their semantics is preserved.From a syntactical point of view this extension consists in hierarchical state machines that may carry at each hierarchy level a bunch of equations. This proposition is an alternative to the joint use of Simulink and Stateflow but improves it by allowing a fine grain mix of both styles.The central idea of the paper is to base this extension on the use of clocks, translating imperative constructs into well clocked data-flow programs from the basic language. This clock directed approach is an easy way to define a semantics for the extension, it is light to implement in an existing compiler and experiments show that the generated code compete favorably with ad-hoc techniques. The proposed extension has been implemented in the ReLuC compiler of Scade/Lustre and in the Lucid Synchrone compiler.


practical aspects of declarative languages | 2008

Certified development tools implementation in objective Caml

Bruno Pagano; Olivier Andrieu; Benjamin Canou; Emmanuel Chailloux; Jean-Louis Colaço; Thomas Moniot; Philippe Wang

This paper presents our feedback from the study on the use of Objective Caml for safety-critical software development tools implementation. As a result, Objective Caml is now used for the new ScadeTM certified embedded-code generator. The requirements for tools implementation are less strict than those for the embedded code itself. However, they are still quite demanding and linked to imperative languages properties, which are usually used for this kind of development. The use of Objective Caml is outstanding: firstly for its high level features (functional language of higher order, parametric polymorphism, pattern matching), secondly for its low level mechanisms needed by the runtime system (GC, exceptions). In order to develop the tools to check the safety-critical software development rules, it is necessary to reinterpret them for this language, and then to adapt Objective Caml so that it satisfies them. Thus, we propose a language restriction and a simplified runtime library in order that we can define and measure the coverage of a program written in Objective Caml according to the MC/DC criteria. Then we can look forward to seeing this kind of languages spread out the industrial environment, while raising the abstraction level in the conception and implementation of tools for certified programs production.


international conference on hybrid systems computation and control | 2014

A type-based analysis of causality loops in hybrid systems modelers

Albert Benveniste; Timothy Bourke; Benoît Caillaud; Bruno Pagano; Marc Pouzet

Explicit hybrid systems modelers like Simulink/Stateflow allow for programming both discrete- and continuous-time behaviors with complex interactions between them. A key issue in their compilation is the static detection of algebraic or causality loops. Such loops can cause simulations to deadlock and prevent the generation of statically scheduled code. This paper addresses this issue for a hybrid modeling language that combines synchronous data-flow equations with Ordinary Differential Equations (ODEs). We introduce the operator last(x) for the left-limit of a signal x. This operator is used to break causality loops and permits a uniform treatment of discrete and continuous state variables. The semantics relies on non-standard analysis, defining an execution as a sequence of infinitesimally small steps. A signal is deemed causally correct when it can be computed sequentially and only changes infinitesimally outside of announced discrete events like zero-crossings. The causality analysis takes the form of a type system that expresses dependences between signals. In well-typed programs, signals are provably continuous during integration provided that imported external functions are also continuous. The effectiveness of this system is illustrated with several examples written in Zélus, a Lustre-like synchronous language extended with hierarchical automata and ODEs.


compiler construction | 2015

A Synchronous-based Code Generator For Explicit Hybrid Systems Languages

Timothy Bourke; Jean-Louis Colaço; Bruno Pagano; Marc Pouzet

Modeling languages for hybrid systems are cornerstones of embedded systems development in which software interacts with a physical environment. Sequential code generation from such languages is important for simulation efficiency and for producing code for embedded targets. Despite being routinely used in industrial compilers, code generation is rarely, if ever, described in full detail, much less formalized. Yet formalization is an essential step in building trustable compilers for critical embedded software development.


international conference on functional programming | 2009

Experience report: using objective caml to develop safety-critical embedded tools in a certification framework

Bruno Pagano; Olivier Andrieu; Thomas Moniot; Benjamin Canou; Emmanuel Chailloux; Philippe Wang; Pascal Manoury; Jean-Louis Colaço


international modelica conference | 2015

Towards a Formalized Modelica Subset

Lucas Satabin; Jean-Louis Colaço; Olivier Andrieu; Bruno Pagano


Archive | 2004

Objective Caml on .NET: The OCamIL Compiler and Toplevel

Raphaël Montelatici; Emmanuel Chailloux; Bruno Pagano


theoretical aspects of software engineering | 2017

SCADE 6: A formal language for embedded critical software development (invited paper)

Jean-Louis Colaço; Bruno Pagano; Marc Pouzet


theoretical aspects of software engineering | 2017

Scade 6: A Formal Language for Embedded Critical Software Development

Jean-Louis Colaço; Bruno Pagano; Marc Pouzet


embedded software | 2017

A Synchronous Look at the Simulink Standard Library

Timothy Bourke; Francois Carcenac; Jean-Louis Colaço; Bruno Pagano; Marc Pouzet

Collaboration


Dive into the Bruno Pagano's collaboration.

Top Co-Authors

Avatar
Top Co-Authors

Avatar

Marc Pouzet

École Normale Supérieure

View shared research outputs
Top Co-Authors

Avatar

Timothy Bourke

École Normale Supérieure

View shared research outputs
Top Co-Authors

Avatar
Top Co-Authors

Avatar
Top Co-Authors

Avatar

Benjamin Canou

École Normale Supérieure

View shared research outputs
Top Co-Authors

Avatar

Francois Carcenac

École Normale Supérieure

View shared research outputs
Top Co-Authors

Avatar
Researchain Logo
Decentralizing Knowledge