The following message is a courtesy copy of an article
that has been posted to
lrde.annonce,epita.adm.adm,epita.adm,iit.adm,fr.comp.developpement,fr.comp.lang.c++,fr.comp.lang.general,fr.comp.objet
as well.
Chers collègues,
La prochaine session du séminaire Performance et Généricité du LRDE
(Laboratoire de Recherche et Développement de l'EPITA) initialement
prévue pour le 28 janvier est déplacée au Mercredi 11 février 2009
(14h-17h).
Au programme:
* 14h: Programmer en JoCaml
-- Luc Maranget, Inria
http://pauillac.inria.fr/~maranget/
JoCaml est une extension d'Objective Caml pour la programmation
concurrente et distribuée, inspirée par le join-calcul. Nous avons
récemment publié une nouvelle version de JoCaml, dont la compatibilité
avec OCaml est meilleure que celle de la version initiale de F. Le
Fessant. La nouvelle version pourra facilement être mise à jour au
rythme d'OCaml et est binaire-compatible avec OCaml.
L'exposé s'attachera plus au langage JoCaml qu'au système JoCaml. Il
montrera comment, à partir d'un programme potentiellement parallélisable
écrit en OCaml (le ray tracer du concours ICFP 2001), on peut facilement
produire un programme distribué, dans le cas abordé, très efficace. Ce
sera l'occasion d'aborder la programmation en JoCaml de la coordination
de multiples agents coopérants, d'une manière simple et concise dans
l'esprit de la programmation fonctionnelle.
JoCaml est disponible en
http://jocaml.inria.fr/.
Luc Maranget est chargé de recherche à l'Inria Rocquencourt. Il est
spécialiste de la conception et de l'implémentation des langages de
programmation, fonctionnels puis concurrents. À cet égard, il est
l'auteur du compilateur de filtrage d'Objective Caml et plus récemment
de la nouvelle version de JoCaml.
* 15h15: ReactiveML : une extension d'OCaml pour la programmation de
systèmes réactifs synchrones
-- Louis Mandel, Université Paris-Sud 11 -- LRI
http://www.lri.fr/~mandel
ReactiveML est une extension d'OCaml basée sur le modèle réactif
synchrone introduit par F. Boussinot au début des années 90. Il permet
la programmation de systèmes tels que les jeux vidéo ou les simulateurs.
Dans cet exposé, je présenterai ReactiveML à travers l'utilisation et la
programmation de rmltop, le pendant ReactiveML du toplevel d'OCaml. Ce
toplevel permet au programmeur d'écrire interactivement des programmes
ReactiveML qui sont typés, compilés et exécutés à la volée. Toute
expression ReactiveML valide peut être chargée dans le toplevel et a la
même sémantique et la même efficacité que sa version compilée.
Louis Mandel est docteur de l'Université Paris 6. Il a passé un an au
laboratoire Verimag de Grenoble et un an à l'INRIA Rocquencourt. Il est
actuellement Maître de Conférences à l'Université Paris-Sud 11. Il
conçoit et développe ReactiveML.
-----------------
Pour plus de renseignements, consultez
http://seminaire.lrde.epita.fr/.
L'entrée du séminaire est libre. Merci de bien vouloir diffuser cette
information le plus largement possible.
-----------------
Vous pouvez dores et déjà noter que la séance suivante aura lieu de
Mercredi 25 février 2009, et sera cette fois consacrée à des
extensions de Java :
* 14h: Mise en oeuvre et application des extensions de langages
-- Patrick Viry, Ateji
www.ateji.com
Je présenterai sur la base d'une démo une application des extensions de
langages, à savoir une extension Java pour l'optimisation. Cet exemple
montre la mise en oeuvre concrète dans Eclipse, les gains de
productivité et de qualité obtenus par rapport aux approches classiques
Java+DSL, la différence entre cette approche et un générateur de code ou
un préprocesseur. Il montre également une utilisation originale d'un
compilateur: la génération automatique d'interface graphique.
Je parlerai aussi des futurs projets d'Ateji dans le domaine des
extensions de langage.
Patrick Viry a obtenu un doctorat d'informatique à l'INRIA-Lorraine en
1992. Il a poursuivi une carrière de chercheur à l'Université de Kyoto,
sur deux thèmes principaux: les modèles théoriques du parallélisme et
les outils de développement de type éditeur syntaxique. Il a rejoint
l'industrie en 1999, d'abord dans une société japonaise réalisant des
contrats pour le MITI, puis en tant qu'architecte du langage OPL chez
Ilog. Il a fondé Ateji en 2005 pour développer et commercialiser des
technologies innovantes dans le domaine des langages et des outils de
programmation.
* 15h15: Programmation par règles : application à la transformation
d'arbres en Java
-- Pierre-Etienne Moreau - INRIA Nancy - Grand Est
http://tom.loria.fr
Dans cet exposé je présenterai un outil, appelé Tom, qui permet de
simplifier la programmation d'outils de manipulation et de
transformation de structures arborescentes, telles que les AST (Abstract
Syntax Trees) ou les documents XML par exemple. Tom est un langage de
programmation qui ajoute à Java des constructions inspirées du calcul de
réécriture et des langages à bases de règles. On peut, de manière
approximative, voir Tom comme une intégration d'un sous-ensemble de Caml
dans Java.
Le langage repose sur trois notions fondamentales :
(i) les termes, qui sont un modèle universel permettant de décrire des
structures arborescentes, et en particulier les notions de programmes et
de preuves.
(ii) les règles, qui permettent de décrire de manière expressive des
transformations.
(iii) les stratégies, qui permettent de contrôler l'application des
règles.
La séparation transformation-contrôle est un point essentiel permettant
de rendre les règles indépendantes de leur contexte d'utilisation,
facilitant ainsi leur écriture, leur réutilisation et l'établissement de
propriétés.
Le Langage Tom est parfaitement adapté à la réalisation d'outils de
transformation et de prouveurs. Son intégration dans Java rend son
utilisation facile, aussi bien dans le milieu académique que dans le
milieu industriel.
Pierre-Etienne Moreau, 37 ans, est Chargé de Recherche à l'INRIA
Nancy-Grand Est, responsable de l'équipe Pareo. Il s'intéresse au
développement d'outils et de langages permettant de développer plus
rapidement des applications complexes et ceci de manière plus sûre. Dans
ce cadre, il a développé au cours de sa thèse le compilateur du langage
ELAN. Depuis 2001, il coordonne le développement de l'environnement Tom,
qui permet de d'intégrer et d'utiliser les notions de réécriture, de
stratégie, de filtrage équationnel dans un environnement de
programmation Java. Les principales applications à ce jour sont la
réalisation de compilateurs, d'outils d'analyse et de transformation de
programmes, ainsi que des prouveurs automatiques.
-----------------
Merci de bien vouloir diffuser cette information le plus largement
possible.