A Conservative Extension of Synchronous

icon

53

pages

icon

English

icon

Documents

2007

Écrit par

Publié par

Lire un extrait
Lire un extrait

Obtenez un accès à la bibliothèque pour le consulter en ligne En savoir plus

Découvre YouScribe en t'inscrivant gratuitement

Je m'inscris

Découvre YouScribe en t'inscrivant gratuitement

Je m'inscris
icon

53

pages

icon

English

icon

Documents

2007

Lire un extrait
Lire un extrait

Obtenez un accès à la bibliothèque pour le consulter en ligne En savoir plus

A Conservative Extension of Synchronous Data-flow with State Machines Marc Pouzet LRI Journees FAC 15 – 16 mars 2007 Toulouse Joint work with Jean-Louis Colac¸o, Gregoire Hamon and Bruno Pagano 1

  • domain specific languages

  • language-based approach

  • specified systems

  • time scale

  • synchronous data


Voir icon arrow

Publié par

Publié le

01 mars 2007

Nombre de lectures

10

Langue

English

A Conservative Extension of Synchronous Data-flow with State Machines
Marc Pouzet LRI
Marc.Pouzet@lri.fr
Journe´esFAC 15 – 16 mars 2007 Toulouse
JointworkwithJean-LouisCola¸co,Gr´egoireHamonandBrunoPagano
1
A Bit of History
Arround 1984, several groups introduced domain-specific languages to program/design control embedded systems.
Lustre(Caspi & Halbwachs, Grenoble): data-flow (block diagram) formalisms with functional (deterministic) semantics;
Signal formalisms with data-flow(Benveniste & Le Guernic, Rennes): relational (non-deterministic) semantics to model also under-specified systems;
Esterel automata and process hierarchical(Berry & Gonthier, Sophia): algebra (and SCCS flavor)
All these languages were recognised to belong to the same family, sharing the same synchronous model of time.
2
The Synchronous Model of Time
a globallogicaltime scale shared by all the processes;
every event can be tagged according to this global time scale;
parallel processes all agree on the presence/absence of events during those instants;
parallel process do not fight for resources (as opposed to time-sharing concurrency):P||Qmeans thatPandQ(virtually) run in parallel;
this reconcile parallelism and determinism
maximal reaction timemaxnIN(tn
tn1)bound
3
Extension Needs for Synchronous Tools
Arround 1995, with Paul Caspi, we identified several “language” needs in synchronous tools
modularity (libraries), abstraction mechanisms
how to mix dataflow (e.g., Lustre) and control-flow (e.g., Esterel) in a unified way?
language-based approach (vs verification) in order to statically guaranty some properties at compile time: type and clock inference (mandatory in a graphical tool), absence of deadlocks, etc.
links with classical techniques from type theory (e.g., mathematical proof of programs, certification of a compiler)
4
The origins of Lucid Synchrone
What are the relationships between:
Kahn Process Networks
Synchronous Data-flow Programming (e.g., Lustre)
(Lazy) Functional Programming (e.g., Haskell)
Types and Clocks
State machines and stream functions
What can we learn from the relationships between synchronous and functional programming?
5
Voir icon more
Alternate Text