mandel.bib

@comment{{This file has been generated by bib2bib 1.98}}
@comment{{Command line: /usr/bin/bib2bib -q -oc mandel.cite -ob mandel.bib -c 'author : "mandel"' ../../biblio/abbrevs.bib ../../biblio/demons.bib ../../biblio/demons2.bib ../../biblio/demons3.bib ../../biblio/team.bib ../../biblio/crossrefs.bib}}
@techreport{crossley93,
  author = {John N.~Crossley and Luis Mandel and Martin Wirsing},
  title = {{U}ntyped {C}onstrained {L}ambda {C}alculus},
  institution = {Ludwig-Maximilians-Universi{t{\"a}}t},
  number = 9318,
  year = 1993,
  address = {Leopoldstra{{\ss} e} 11b, 80802~{M{\"u}}nchen, Germany}
}
@inproceedings{MandelMaranget08esop,
  author = {Louis Mandel and Luc Maranget},
  title = {Programming in {JoCaml} (Tool Demonstration)},
  crossref = {esop08},
  year = 2008,
  pages = {108--111},
  x-pdf = {http://www.lri.fr/~mandel/papers/MandelMaranget-ESOP-2008.pdf},
  url = {http://www.lri.fr/~mandel/papers/MandelMaranget-ESOP-2008.pdf},
  topics = {team, lri},
  type_publi = {icolcomlec},
  type_digiteo = {conf_isbn},
  x-equipes = {demons PROVAL EXT},
  x-type = {article},
  x-support = {actes},
  x-cle-support = {ESOP},
  x-editorial-board = {yes},
  x-international-audience = {yes},
  x-proceedings = {yes}
}
@techreport{MandelMaranget07RR,
  author = {Louis Mandel and Luc Maranget},
  title = {Programming in {JoCaml} -- extended version},
  institution = {INRIA},
  year = 2007,
  number = 6261,
  x-pdf = {http://www.lri.fr/~mandel/papers/MandelMaranget-RR-2007.pdf},
  url = {http://www.lri.fr/~mandel/papers/MandelMaranget-RR-2007.pdf},
  topics = {team},
  x-equipes = {demons PROVAL EXT},
  x-type = {article},
  x-support = {rapport}
}
@manual{MandelMaranget2007Jocaml,
  author = {Louis Mandel and Luc Maranget},
  title = {The {JoCaml} system},
  institution = {Inria-Rocquencourt},
  note = {Software and documentation available at
                    \url{http://jocaml.inria.fr/}},
  year = 2007,
  url = {http://jocaml.inria.fr/},
  x-equipes = {demons PROVAL EXT},
  x-type = {manuel},
  x-support = {diffusion},
  topics = {team}
}
@inproceedings{MandelPlateau09_HFL,
  address = {York, UK},
  author = {Albert Cohen and Louis Mandel and Florence Plateau and Marc Pouzet},
  booktitle = {Hardware Design using Functional languages (HFL 09)},
  month = mar,
  title = {Relaxing Synchronous Composition with Clock Abstraction},
  year = {2009},
  pages = {35-52},
  x-international-audience = {yes},
  x-proceedings = {yes},
  topics = {team},
  x-support = {actes_aux},
  x-equipes = {demons PROVAL alchemy},
  x-type = {article},
  type_publi = {icolcomlec}
}
@inproceedings{MandelPlateauPouzet-DCC-10,
  author = {Louis Mandel and Florence Plateau and Marc Pouzet},
  title = {Clock Typing of n-Synchronous Programs},
  booktitle = {Designing Correct Circuits ({DCC 2010})},
  year = 2010,
  month = mar,
  address = {Paphos, Cyprus},
  topics = {team},
  x-equipes = {demons PROVAL},
  x-support = {actes_aux},
  x-cle-support = {DCCircuits},
  x-type = {article},
  x-international-audience = {yes},
  x-proceedings = {yes},
  x-editorial-board = {yes}
}
@inproceedings{Pouzet08c,
  author = {Albert Cohen and Louis Mandel and Florence Plateau and
                  Marc Pouzet},
  title = {{Abstraction of Clocks in Synchronous Data-flow Systems}},
  booktitle = {The Sixth ASIAN Symposium on Programming Languages and Systems
              (APLAS)},
  abstract = { Synchronous data-flow languages such as Lustre manage infinite
  sequences or streams as basic values. Each stream is
  associated to a clock which defines the instants where the
  current value of the stream is present. This clock is a type
  information and a dedicated type system --- the so-called
  clock-calculus --- statically rejects programs which cannot be
  executed synchronously. In existing synchronous languages, it
  amounts at asking whether two streams have the same clocks and thus
  relies on clock equality only. Recent works have shown the interest
  of introducing some relaxed notion of synchrony, where two streams can
  be composed as soon as they can be synchronized through the
  introduction of a finite buffer (as done in the SDF model of Edward
  Lee).  This technically consists in replacing typing by
  subtyping. The present paper introduces a simple way to achieve
  this relaxed model through the use of clock
    envelopes. These clock envelopes are sets of concrete clocks which
  are not necessarily periodic. This allows to model various features
  in real-time embedded software such as bounded jitter as found in
  video-systems,  execution time of real-time processes and
  scheduling resources or the communication through buffers. We
  present the algebra of clock envelopes and its main theoretical
  properties.},
  x-pdf = {http://www.lri.fr/~plateau/papers/aplas08.pdf},
  url = {http://www.lri.fr/~plateau/papers/aplas08.pdf},
  year = 2008,
  month = dec,
  date = {9--11},
  series = {Lecture Notes in Computer Science},
  volume = {5356},
  pages = {237--254},
  address = {Bangalore, India},
  type_publi = {icolcomlec},
  x-equipes = {demons PROVAL EXT},
  x-type = {article},
  x-support = {actes},
  x-cle-support = {APLAS},
  x-editorial-board = {yes},
  x-international-audience = {yes},
  x-proceedings = {yes},
  topics = {team}
}
@inproceedings{mandel05ppdp,
  author = {Louis Mandel and Marc Pouzet},
  title = {{ReactiveML, a Reactive Extension to ML}},
  booktitle = {ACM International Conference
                  on Principles and Practice of Declarative Programming
                  (PPDP)},
  year = 2005,
  pages = {82--93},
  x-pdf = {http://www.lri.fr/~mandel/papers/MandelPouzet-PPDP-2005.pdf},
  url = {http://www.lri.fr/~mandel/papers/MandelPouzet-PPDP-2005.pdf},
  topics = {team},
  type_publi = {icolcomlec},
  x-equipes = {demons PROVAL},
  x-type = {article},
  x-support = {actes},
  x-cle-support = {PPDP},
  address = {Lisboa},
  month = jul
}
@inproceedings{MandelPlateau2008SLAP,
  author = {Louis Mandel and Florence Plateau},
  title = {Interactive Programming of Reactive Systems},
  booktitle = {Proceedings of Model-driven High-level Programming of Embedded Systems ({SLA++P'08})},
  year = 2008,
  month = apr,
  address = {Budapest, Hungary},
  pages = {44--59},
  x-pdf = {http://www.lri.fr/~mandel/papers/MandelPlateau-SLAP-2008.pdf},
  url = {http://www.lri.fr/~mandel/papers/MandelPlateau-SLAP-2008.pdf},
  topics = {team},
  type_publi = {icolcomlec},
  series = {Electronic Notes in Computer Science},
  publisher = {Elsevier Science Publishers},
  x-equipes = {demons PROVAL},
  x-type = {article},
  x-support = {actes_aux},
  x-cle-support = {ENTCS},
  x-editorial-board = {yes},
  x-international-audience = {yes},
  x-proceedings = {yes}
}
@article{MandelPouzet2007TSI,
  author = {Louis Mandel and Marc Pouzet},
  title = {{ReactiveML} : un langage fonctionnel pour la programmation r{\'e}active},
  journal = {Technique et Science Informatiques ({TSI})},
  year = {2008},
  volume = 27,
  number = {9--10/2008},
  pages = {1097--1128},
  x-pdf = {http://www.lri.fr/~mandel/papers/MandelPouzet-TSI-2007.pdf},
  url = {http://www.lri.fr/~mandel/papers/MandelPouzet-TSI-2007.pdf},
  topics = {team},
  x-equipes = {demons PROVAL},
  x-type = {article},
  x-support = {revue},
  x-cle-support = {TSI},
  x-editorial-board = {yes},
  x-international-audience = {no}
}
@inproceedings{MorelMandel2007FESCA,
  author = {Lionel Morel and Louis Mandel},
  title = {Executable Contracts for Incremental Prototypes of Embedded Systems},
  booktitle = {Formal Foundations of Embedded Software
                  and Component-Based Software Architectures ({FESCA'07})},
  month = mar,
  year = 2007,
  x-pdf = {http://www.lri.fr/~mandel/papers/MorelMandel-FESCA-2007.pdf},
  url = {http://www.lri.fr/~mandel/papers/MorelMandel-FESCA-2007.pdf},
  pages = {123--136},
  topics = {team},
  type_digiteo = {conf_autre},
  type_publi = {icolcomlec},
  serie = {Electronic Notes in Computer Science},
  publisher = {Elsevier Science Publishers},
  x-equipes = {demons PROVAL EXT},
  x-type = {article},
  x-support = {actes_aux},
  x-cle-support = {ENTCS}
}
@phdthesis{Mandel2006phd,
  author = {Louis Mandel},
  title = {Conception, S{\'e}mantique et Implantation de {ReactiveML} : un langage {\`a} la {ML} pour la programmation r{\'e}active},
  school = {Universit{\'e} Paris 6},
  year = {2006},
  x-pdf = {http://www.lri.fr/~mandel/papers/Mandel-These.pdf},
  url = {http://www.lri.fr/~mandel/papers/Mandel-These.pdf},
  topics = {team},
  type_digiteo = {no},
  type_publi = {these},
  x-equipes = {demons PROVAL},
  x-type = {these},
  x-support = {rapport}
}
@techreport{Mandel2006Assert4322,
  key = {D432-2},
  author = {Louis Mandel},
  title = {Prototype of {AADL} simulation in {SCADE}},
  type = {{ASSERT} Deliverable 4.3.2-2},
  institution = {ASSERT Project},
  month = nov,
  year = 2006,
  topics = {team},
  x-equipes = {demons PROVAL},
  x-type = {contrat},
  x-support = {rapport}
}
@techreport{Mandel2006Assert4321,
  key = {D432-1},
  author = {Louis Mandel},
  title = {Report on modeling {GALS} in {SCADE}},
  type = {{ASSERT} Deliverable 4.3.2-1},
  institution = {ASSERT Project},
  month = feb,
  year = 2006,
  topics = {team},
  x-equipes = {demons PROVAL},
  x-type = {contrat},
  x-support = {rapport}
}
@inproceedings{HalbwachsMandel2006ACSD,
  author = {Nicolas Halbwachs and Louis Mandel},
  title = {Simulation and verification of asynchronous systems by means of a synchronous model},
  booktitle = {Sixth International Conference on Application of Concurrency to System Design ({ACSD'06})},
  year = {2006},
  address = {Turku, Finland},
  month = jun,
  pages = {3--14},
  x-pdf = {http://www.lri.fr/~mandel/papers/HalbwachsMandel-ACSD-2006.pdf},
  url = {http://www.lri.fr/~mandel/papers/HalbwachsMandel-ACSD-2006.pdf},
  topics = {team},
  type_publi = {icolcomlec},
  x-equipes = {demons PROVAL EXT},
  x-type = {article},
  x-support = {actes},
  x-cle-support = {ACSD}
}
@inproceedings{SamperMaraninchiMounierMandel2006InterSense,
  author = {Ludovic Samper and Florence Maraninchi and Laurent Mounier
                  and Louis Mandel},
  title = {{GLONEMO}: Global and Accurate Formal Models for the Analysis of Ad hoc Sensor Networks},
  booktitle = {Proceedings of the First International Conference on Integrated Internet Ad hoc and Sensor Networks ({InterSense'06})},
  year = {2006},
  address = {Nice, France},
  month = may,
  publisher = {ACM Press},
  url = {http://www.lri.fr/~mandel/papers/SamperMaraninchiMounierMandel-InterSense-2006.pdf},
  x-pdf = {http://www.lri.fr/~mandel/papers/SamperMaraninchiMounierMandel-InterSense-2006.pdf},
  topics = {team},
  type_publi = {icolcomlec},
  x-equipes = {demons PROVAL EXT},
  x-type = {article},
  x-support = {actes},
  x-cle-support = {Bodynets}
}
@inproceedings{MandelBenbadis2005SLAP,
  author = {Louis Mandel and Farid Benbadis},
  title = {Simulation of Mobile Ad hoc Network Protocols in {ReactiveML}},
  booktitle = {Proceedings of Synchronous Languages, Applications, and Programming ({SLAP'05})},
  publisher = {Elsevier Science Publishers},
  year = 2005,
  month = apr,
  address = {Edinburgh, Scotland},
  x-pdf = {http://www.lri.fr/~mandel/papers/MandelBenbadis-SLAP-2005.pdf},
  url = {http://www.lri.fr/~mandel/papers/MandelBenbadis-SLAP-2005.pdf},
  topics = {team},
  type_publi = {icolcomlec},
  x-equipes = {demons PROVAL EXT},
  x-type = {article},
  x-support = {actes},
  x-cle-support = {ENTCS}
}
@inproceedings{MandelPouzet2005JFLA,
  author = {Louis Mandel and Marc Pouzet},
  title = {{ReactiveML}, un langage pour la programmation r{\'e}active en {ML}},
  crossref = {jfla05},
  pages = {1-16},
  url = {http://www.lri.fr/~mandel/papers/MandelPouzet-JFLA-2005.ps},
  topics = {team},
  type_publi = {colcomlec},
  x-equipes = {demons PROVAL EXT},
  x-type = {article},
  x-support = {actes_aux},
  x-cle-support = {JFLA}
}
@unpublished{rml:simulation06,
  author = {Farid Benbadis and Louis Mandel and Marc Pouzet
                   and Ludovic Samper},
  title = {Simulation of Ad hoc Networks in {ReactiveML}},
  note = {Submitted to publication},
  year = 2006,
  month = jun
}
@inproceedings{mandel-plateau09jfla,
  author = {Louis Mandel and Florence Plateau},
  title = {{Abstraction d'horloges dans les syst\`emes synchrones flot de donn\'ees}},
  url = {http://www.lri.fr/~plateau/papers/jfla09.pdf},
  abstract = {Les langages synchrones flot de donn\'ees tels que
                  Lustre manipulent des s\'equences infinies de
                  donn\'ees comme valeurs de base.  Chaque flot est
                  associ\'e \`a une horloge qui d\'efinit les instants
                  o\`u sa valeur est pr\'esente. Cette horloge est une
                  information de type et un syst\`eme de types
                  d\'edi\'e, le calcul d'horloges, rejette
                  statiquement les programmes qui ne peuvent pas \^etre
                  ex\'ecut\'es de mani\`ere synchrone. Dans les
                  langages synchrones existants, cela revient \`a se
                  demander si deux flots ont la m\^eme horloge et repose
                  donc uniquement sur l'\'egalit\'e d'horloges.  Des
                  travaux r\'ecents ont montr\'e l'int\'er\^et
                  d'introduire une notion rel\^ach\'ee du synchronisme,
                  o\`u deux flots peuvent \^etre compos\'es d\`es qu'ils
                  peuvent \^etre synchronis\'es par l'introduction d'un
                  buffer de taille born\'ee (comme c'est fait dans le
                  mod\`ele SDF d'Edward Lee). Techniquement, cela
                  consiste \`a remplacer le typage par du
                  sous-typage. Ce papier est une traduction et
                  am\'elioration technique de~\cite{Pouzet08c} qui pr\'esente
                  un moyen simple de mettre en oeuvre ce mod\`ele
                  rel\^ach\'e par l'utilisation d'horloges abstraites.
                  Les valeurs abstraites repr\'esentent des ensembles
                  d'horloges concr\`etes qui ne sont pas
                  n\'ecessairement p\'eriodiques.  Cela permet de
                  mod\'eliser divers aspects des logiciels
                  temps-r\'eel embarqu\'es, tels que la gigue born\'ee
                  pr\'esente dans les syst\`emes vid\'eo, le temps
                  d'ex\'ecution des processus temps r\'eel et, plus
                  g\'en\'eralement, la communication \`a travers des
                  buffers de taille born\'ee.  Nous pr\'esentons ici
                  l'alg\`ebre des horloges abstraites et leurs
                  principales propri\'et\'es th\'eoriques.},
  topics = {team, lri},
  type_publi = {colcomlec},
  x-equipes = {demons PROVAL},
  x-type = {article},
  x-support = {actes_aux},
  x-cle-support = {JFLA},
  crossref = {jfla09}
}
@inproceedings{MandelPlateauPouzet-MLworkshop-2009,
  author = {Louis Mandel and Florence Plateau and Marc Pouzet},
  title = {The {ReactiveML} Toplevel (Tool Demonstration)},
  booktitle = {ACM SIGPLAN Workshop on ML},
  address = {Edinburgh, Scotland, UK},
  topics = {team, lri},
  type_publi = {icolcomlec},
  month = aug,
  year = 2009,
  x-type = {article},
  x-support = {actes_aux},
  x-equipes = {demons PROVAL},
  x-cle-support = {ML},
  x-international-audience = {yes},
  x-proceedings = {no},
  x-editorial-board = {yes}
}
@inproceedings{MandelPlateau10jfla,
  author = {Louis Mandel and Florence Plateau and Marc Pouzet},
  title = {{Lucy-n}~: une extension n-synchrone de {Lustre}},
  url = {http://www.lri.fr/~mandel/papiers/MandelPlateau-JFLA-2010.pdf},
  abstract = {Les langages synchrones flot de donn\'ees permettent de programmer
  des r\'eseaux de processus communicant sans buffers.
  Pour cela, chaque
  flot est associ\'e \`a un type d'horloges, qui indique les instants de
  pr\'esence de valeurs sur le flot. La communication entre deux
  processus \verb+f+ et \verb+g+ peut \^etre faite sans buffer si le
  type du flot de sortie de \verb+f+ est \'egal au type du flot d'entr\'ee
  de~\verb+g+.
  Un syst\`eme de type, le calcul d'horloge, inf\`ere des types tels que
  cette condition est v\'erifi\'ee.
  Le mod\`ele n-synchrone a pour but de rel\^acher ce mod\`ele de
  programmation en autorisant les communications \`a travers des buffers
  de taille born\'ee.  En pratique, cela consiste \`a introduire une
  r\`egle de sous-typage dans le calcul d'horloge.

  Nous avons pr\'esent\'e l'ann\'ee derni\`ere un article d\'ecrivant comment
  abstraire des horloges pour v\'erifier la relation de
  sous-typage. Cette ann\'ee, nous pr\'esentons un langage de
  programmation n-synchrone~: Lucy-n. Dans ce langage, l'inf\'erence
  des types d'horloges est param\'etrable par l'algorithme de r\'esolution
  des contraintes de sous-typage. Nous montrons ici un algorithme
  bas\'e sur les travaux de
  l'an dernier et comment programmer en Lucy-n \`a travers l'exemple
  d'une application de traitement multim\'edia.},
  topics = {team, lri},
  type_publi = {colcomlec},
  x-equipes = {demons PROVAL},
  x-type = {article},
  x-support = {actes_aux},
  x-cle-support = {JFLA},
  crossref = {jfla10}
}
@inproceedings{MandelPlateau10gpl,
  author = {Louis Mandel and Florence Plateau and Marc Pouzet},
  title = {{Lucy-n~:} une extension n-synchrone de {Lustre}},
  booktitle = {{Journ\'ees nationales du GDR-GPL}},
  year = {2010},
  editor = {\'Eric Cariou and Laurence Duchien and Yves Ledru},
  address = {{Pau, France}},
  month = mar,
  organization = {{GDR GPL}},
  topics = {team},
  x-equipes = {demons PROVAL},
  x-support = {actes_aux},
  x-cle-support = {JGDRGPL},
  x-type = {article},
  annote = {Invited, selected paper}
}
@inproceedings{mandel10jfla,
  author = {Louis Mandel},
  title = {Cours de {ReactiveML}},
  url = {http://www.lri.fr/~mandel/papiers/Mandel-JFLA-2010.pdf},
  topics = {team, lri},
  type_publi = {colcomlec},
  x-equipes = {demons PROVAL},
  x-support = {actes_aux},
  x-type = {article},
  x-cle-support = {JFLA},
  crossref = {jfla10}
}
@inproceedings{MandelPlateauPouzet-MPC-2010,
  author = {Louis Mandel and Florence Plateau and Marc Pouzet},
  title = {{Lucy-n}: a n-Synchronous Extension of {Lustre}},
  booktitle = {Tenth International Conference on Mathematics of Program Construction ({MPC 2010})},
  year = 2010,
  month = jun,
  address = {Qu{\'e}bec, Canada},
  url = {http://www.lri.fr/~mandel/papiers/MandelPlateauPouzet-MPC-10.pdf},
  abstract = {Synchronous functional languages such as Lustre
  or Lucid Synchrone define a
  restricted class of Kahn Process Networks which can be executed with
  no buffer.
  Every expression is associated to a clock indicating the instants
  when a value is present. A dedicated type system, the clock
  calculus, checks that the actual clock of a stream equals its
  expected clock and thus does not need to be buffered.
  The n-synchrony relaxes synchrony by allowing the
  communication through bounded buffers whose size is computed at
  compile-time.
  It is obtained by extending the clock calculus with
  a subtyping rule which defines buffering points.

  This paper presents the first implementation of the n-synchronous
  model inside a Lustre-like language called Lucy-n. The language
  extends Lustre with an explicit \verb-buffer- construct whose size
  is automatically computed during the clock calculus.
  This clock calculus is defined as an inference type system and is
  parametrized by the clock language and the algorithm used to solve
  subtyping constraints.  We detail here one algorithm based on the
  abstraction of clocks, an idea originally introduced
  in~\cite{Pouzet08c}. The paper presents a simpler, yet more
  precise, clock abstraction for which the main algebraic properties have
  been proved in Coq. Finally, we illustrate the language on various
  examples including a video application.},
  topics = {team},
  x-equipes = {demons PROVAL},
  x-type = {article},
  x-support = {actes},
  x-cle-support = {MPC},
  x-international-audience = {yes},
  x-proceedings = {yes}
}
@inproceedings{MandelPlateau-MPC-2012,
  author = {Louis Mandel and Florence Plateau},
  title = {Scheduling and Buffer Sizing of n-Synchronous Systems:
           Typing of Ultimately Periodic Clocks in {Lucy-n}},
  booktitle = {Eleventh International Conference on Mathematics of Program Construction ({MPC'12})},
  year = 2012,
  month = jun,
  address = {Madrid, Spain},
  url = {http://www.lri.fr/~mandel/papiers/MandelPlateau-MPC-2012.pdf},
  abstract = {Lucy-n is a language for programming networks of processes
    communicating through bounded buffers. A dedicated type
    system, termed a clock calculus, automatically computes static
    schedules of the processes and the sizes of the buffers between
    them.

    In this article, we present a new algorithm which solves the
    subtyping constraints generated by the clock calculus. The
    advantage of this algorithm is that it finds schedules for tightly
    coupled systems. Moreover, it does not overestimate the buffer
    sizes needed and it provides a way
    to favor either system throughput or buffer size minimization.},
  topics = {team},
  x-equipes = {demons PROVAL},
  x-type = {article},
  x-support = {actes},
  x-cle-support = {MPC},
  x-international-audience = {yes},
  x-proceedings = {yes}
}
@inproceedings{MandelPlateau11jfla,
  author = {Louis Mandel and Florence Plateau},
  title = {Typage des horloges p{\'e}riodiques en {Lucy-n}},
  url = {http://www.lri.fr/~mandel/papiers/MandelPlateau-JFLA-2011.pdf},
  abstract = {Lucy-n est un langage permettant de programmer des r{\'e}seaux de
  processus communiquant {\`a} travers des buffers de taille
  born{\'e}e.  La taille des buffers et les rythmes d'ex{\'e}cution relatifs
  des processus sont calcul{\'e}s par une phase de typage appel{\'e}e calcul
  d'horloge. Ce typage n{\'e}cessite la r{\'e}solution d'un ensemble de
  contraintes de sous-typage. L'an dernier, nous avons propos{\'e} un
  algorithme de r{\'e}solution de ces contraintes utilisant des m{\'e}thodes
  issues de l'interpr{\'e}tation abstraite.  Cette ann{\'e}e nous pr{\'e}sentons
  un algorithme tirant profit de toute l'information contenue dans les
  types.},
  topics = {team},
  type_publi = {colcomlec},
  x-equipes = {demons PROVAL},
  x-type = {article},
  x-support = {actes_aux},
  x-cle-support = {JFLA},
  crossref = {jfla11}
}
@inproceedings{mandel11fmcad,
  author = {Louis Mandel and Florence Plateau and Marc Pouzet},
  title = {Static Scheduling of Latency Insensitive Designs with {Lucy-n}},
  booktitle = {Formal Methods in Computer Aided Design ({FMCAD 2011})},
  year = 2011,
  month = oct,
  address = {Austin, TX, USA},
  hal = {http://hal.inria.fr/hal-00654843},
  url = {http://www.lri.fr/~mandel/papiers/MandelPlateauPouzet-FMCAD-2011.pdf},
  webpage = {http://www.lri.fr/~mandel/lucy-n/fmcad11/},
  abstract = {Lucy-n is a dataflow programming language similar to Lustre
  extended with a buffer operator. This language is based on the
  n-synchronous model which was initially introduced for programming
  multimedia streaming applications. In this article, we show that
  Lucy-n is also applicable to model Latency Insensitive
  Designs~(LID). In order to model relay stations, we have to
  introduce a delay operator. Thanks to this new operator, a LID can be
  described by a Lucy-n program. Then, the Lucy-n compiler
  automatically provides static schedules for computation nodes and
  buffer sizes needed in the shell wrappers.},
  topics = {team},
  x-teams = {demons PROVAL},
  x-type = {article},
  x-support = {actes},
  x-cle-support = {FMCAD},
  x-international-audience = {yes},
  x-proceedings = {yes}
}
@inproceedings{mandel13jfla,
  author = {Louis Mandel and C{\'e}dric Pasteur},
  title = {R{\'e}activit{\'e} des syst{\`e}mes coop{\'e}ratifs : le cas de {ReactiveML}},
  crossref = {jfla13},
  topics = {team},
  type_publi = {colcomlec},
  x-equipes = {demons PROVAL ext},
  x-type = {article},
  x-support = {actes},
  note = {\url{http://rml.lri.fr/jfla13}},
  hal = {http://hal.inria.fr/hal-00779789},
  url = {http://www.lri.fr/~mandel/publications/MandelPasteur-JFLA-2013.pdf},
  abstract = {La concurrence coop{\'e}rative est un mod{\`e}le de programmation tr{\`e}s
r{\'e}pandu. On peut par exemple l'utiliser en OCaml {\`a} travers des
biblioth{\`e}ques comme Lwt, Async ou Equeue. Il a de nombreux avantages
tels que l'absence de courses critiques et des implantations l{\'e}g{\`e}res
et efficaces.  N{\'e}anmoins, un des inconv{\'e}nients majeurs de ce mod{\`e}le
est qu'il d{\'e}pend de la discipline du programmeur pour garantir que le
syst{\`e}me est r{\'e}actif : un processus peut emp{\^e}cher les autres de
s'ex{\'e}cuter.

ReactiveML est un langage qui {\'e}tend OCaml avec des constructions de
concurrence coop{\'e}rative. Il propose une analyse statique, l'analyse de
r{\'e}activit{\'e}, qui permet de d{\'e}tecter les expressions qui risquent de
produire des comportements non coop{\'e}ratifs.  Dans cet article, nous
pr{\'e}sentons cette analyse statique qui se d{\'e}finit {\`a} l'aide d'un syst{\`e}me
de types et effets.  Ainsi, comme le typage de donn{\'e}es aide les
programmeurs {\`a} d{\'e}tecter des erreurs d'ex{\'e}cution au plus t{\^o}t, l'analyse
de r{\'e}activit{\'e} aide {\`a} d{\'e}tecter des erreurs de concurrence.}
}
@inproceedings{BaudartJacquemardMandelPouzet-EMSOFT-2013,
  hal = {http://hal.inria.fr/hal-00850299},
  author = {Guillaume Baudart and Florent Jacquemard and Louis Mandel and Marc Pouzet},
  title = {A Synchronous Embedding of {Antescofo}, a Domain-Specific Language for Interactive Mixed Music},
  booktitle = {Thirteen International Conference on Embedded Software (EMSOFT'13)},
  year = 2013,
  month = sep,
  address = {Montreal, Canada},
  topics = {team},
  type_publi = {icolcomlec},
  x-equipes = {demons PROVAL ext},
  x-type = {article},
  x-support = {actes},
  url = {http://reactiveml.org/publications/BaudartJacquemardMandelPouzet-EMSOFT-2013.pdf},
  webpage = {http://reactiveml.org/emsoft13},
  abstract = {Antescofo is recently developed software for \emph{musical score
  following} and \emph{mixed music}: it automatically, and in
real-time, synchronizes electronic instruments with a musician playing
on a classical instrument.  Therefore, it faces some of the same major
challenges as embedded systems.

The system provides a programming language used by composers to
specify musical pieces that mix interacting electronic and classical
instruments.  This language is developed with and for musicians and it
continues to evolve according to their needs.  Yet its semantics has
only recently been formally defined.  This paper presents a
\emph{synchronous semantics} for the core language of Antescofo and
an alternative implementation based on an embedding inside an
existing synchronous language, namely ReactiveML.
The semantics reduces to a few rules, is mathematically precise and
leads to an interpretor of only a few hundred lines. The efficiency of this
interpretor compares well with that of the actual implementation: on
all musical pieces we have tested, response times have been less than
the reaction time of the human ear.  Moreover, this embedding
permitted the prototyping of several new programming constructs, some
of which are described in this paper.}
}
@inproceedings{BaudartMandelPouzet-FARM-2013,
  hal = {http://hal.inria.fr/hal-00850294},
  author = {Guillaume Baudart and Louis Mandel and Marc Pouzet},
  title = {Programming Mixed Music in {ReactiveML}},
  booktitle = {ACM SIGPLAN Workshop on Functional Art, Music, Modeling and Design ({FARM'13})},
  year = 2013,
  month = sep,
  address = {Boston, USA},
  note = {Workshop ICFP 2013},
  url = {http://reactiveml.org/publications/BaudartMandelPouzet-FARM-2013.pdf},
  topics = {team},
  type_publi = {icolcomlec},
  x-equipes = {demons PROVAL ext},
  x-type = {article},
  x-support = {actes},
  webpage = {http://reactiveml.org/farm13},
  abstract = {Mixed music is about live musicians interacting with electronic
  parts which are controlled by a computer during the performance.
  It allows composers to use and combine traditional instruments with
  complex synthesized sounds and other electronic devices.
  There are several languages dedicated to the writing of mixed music
  scores. Among them, the Antescofo language coupled with an
  advanced score follower allows a composer to manage the reactive
  aspects of musical performances: how electronic parts interact with
  a musician.
  However these domain specific languages do not offer the
  expressiveness of functional programming.

  We embed the Antescofo language in a reactive functional
  programming language, ReactiveML. This approach offers to the composer
  recursion, higher order, inductive types, as well as a
  simple way to program complex reactive behaviors thanks to the
  synchronous model of concurrency on which ReactiveML is built.
  This article presents how to program mixed music in ReactiveML through
  several examples.}
}
@inproceedings{MandelPasteurPouzet-PPDP-2013,
  hal = {http://hal.inria.fr/hal-00850290},
  author = {Louis Mandel and C{\'e}dric Pasteur and Marc Pouzet},
  title = {Time Refinement in a Functional Synchronous Language},
  booktitle = {Proceedings of 15th {ACM SIGPLAN} International Symposium on Principles and Practice of Declarative Programming ({PPDP'13})},
  year = 2013,
  address = {Madrid, Spain},
  month = sep,
  topics = {team},
  type_publi = {icolcomlec},
  x-equipes = {demons PROVAL ext},
  x-type = {article},
  x-support = {actes},
  url = {http://reactiveml.org/publications/MandelPasteurPouzet-PPDP-2013.pdf},
  webpage = {http://reactiveml.org/ppdp13},
  abstract = {Concurrent and reactive systems often exhibit multiple time scales. For instance, in a discrete simulation, the scale at which agents communicate might be very different from the scale used to model the internals of each agent.

We propose an extension of the synchronous model of concurrency, called \emph{reactive domains}, to simplify the programming of such systems. Reactive domains allow the creation of local time scales and enable \emph{refinement}, that is, the replacement of an approximation of a system with a more detailed version without changing its behavior as observed by the rest of the program.

Our work is applied to the ReactiveML language, which extends ML with synchronous language constructs. We present an operational semantics for the extended language and a type system that ensures the soundness of programs.}
}
@inproceedings{mandel12cp,
  author = {Vijay Saraswat and David Cunningham and Liana Hadarean and Louis Mandel and Avraham Shinnar and Olivier Tardieu},
  title = {Constrained Types - Future Directions},
  booktitle = {18th International Conference on Principles and Practice of Constraint Programming},
  year = 2012,
  month = oct,
  address = {Qu{\'e}bec City, Canada},
  note = {Position Paper},
  url = {http://www.lri.fr/~mandel/publications/SaraswatCunninghamHadareanMandelShinnarTardieu-CP-2012.pdf},
  abstract = {The use of constraints in types is quite natural. Yet, integrating constraint based types into the heart of a modern, statically typed, object-oriented programming language is quite tricky. Over the last five years we have designed and implemented the constrained types framework in the programming language X10. In this paper we review the conceptual design, the practical implementation issues, and the many new questions that are raised. We expect the pursuit of these questions to be a profitable area of future work.},
  topics = {team},
  type_publi = {colloque},
  x-equipes = {demons PROVAL ext},
  hal = {http://hal.inria.fr/hal-00798046}
}
@proceedings{jfla05,
  title = {Journ\'ees Francophones des Langages Applicatifs},
  year = 2005,
  booktitle = {Seizi\`emes Journ\'ees Francophones des Langages Applicatifs},
  month = mar,
  publisher = {INRIA}
}
@proceedings{jfla09,
  title = {Journ\'ees Francophones des Langages Applicatifs},
  year = 2009,
  booktitle = {Vingti\`emes Journ\'ees Francophones des Langages Applicatifs},
  month = jan,
  address = {Saint-Quentin sur Is\`ere},
  publisher = {INRIA},
  x-international-audience = {no},
  x-editorial-board = {yes},
  x-proceedings = {yes}
}
@proceedings{jfla10,
  title = {Journ\'ees Francophones des Langages Applicatifs},
  year = 2010,
  booktitle = {Vingt-et-uni\`emes Journ\'ees Francophones des Langages Applicatifs},
  month = jan,
  address = {Vieux-Port La Ciotat, France},
  publisher = {INRIA},
  x-international-audience = {no},
  x-editorial-board = {yes},
  x-proceedings = {yes}
}
@proceedings{jfla11,
  title = {Journ\'ees Francophones des Langages Applicatifs},
  editor = {Sylvain Conchon},
  year = 2011,
  booktitle = {Vingt-deuxi\`emes Journ\'ees Francophones des Langages Applicatifs},
  month = jan,
  address = {La Bresse, France},
  publisher = {INRIA},
  x-international-audience = {no},
  x-editorial-board = {yes},
  x-proceedings = {yes}
}
@proceedings{jfla13,
  title = {Journ\'ees Francophones des Langages Applicatifs},
  year = 2013,
  booktitle = {Vingt-quatri\`emes Journ\'ees Francophones des Langages Applicatifs},
  month = feb,
  address = {Aussois, France},
  x-international-audience = {no},
  x-editorial-board = {yes},
  x-proceedings = {yes},
  x-type = {article},
  x-support = {actes_aux},
  x-cle-support = {JFLA}
}
@proceedings{esop08,
  title = {17th European Symposium on Programming (ESOP'08)},
  booktitle = {17th European Symposium on Programming (ESOP'08)},
  year = 2008,
  address = {Budapest, Hungary},
  month = apr
}