Description
Date depot: 1 janvier 1900
Titre: Programmation Web Réactive dans un cadre typé statiquement pour l'orchestration de contenus mutltimédia riches
Directeur de thèse:
Emmanuel CHAILLOUX (LIP6)
Domaine scientifique: Sciences et technologies de l'information et de la communication
Thématique CNRS : Non defini
Resumé:
L’approche de la programmation Web multi-tiers permet d’écrire l’intégralité d’une application Web en n’utilisant qu’un seul formalisme (une seule syntaxe, une seule sémantique et un seul environnement d’exécution).
Cette approche apporte une cohérence et une compacité qui facilitent le développement des applications Web. Une application Web est un seul programme ce qui permet de faire des analyses en une fois et en même temps sur la partie serveur et client.
Les environnement Hop [SeQu2010b, SeBe2012 ] et OCsigen [BaChHe2012] proposent cette démarche, leur principale différence provient du système de types ; Hop est basé sur Scheme (typé dynamiquement) alors qu’OCsigen est sur OCaml (typé statiquement). Les sites respectifs http://hop.inria.fr/ et http://ocsigen.org/ contiennent les documentations complètes et leurs applications phares.
Le modèle de programmation synchrone a déjà fait ses preuves dans l’embarqué critique, en particulier dans l’avionique civile, comme le montre la 'success story' de la société Esterel-Technologies.
Le DSL proposé en HipHop [BeNiSe2011] reprend les principales caractéristiques du langage Esterel pour l’orchestration d’événements distants ou locaux. tels que ceux émis par les interfaces graphiques, les timers, ou des services externes. Hop/HipHop permet donc d’écrire des applications Web complexes qui combinent ressources locales et ressources distantes et qui permet la synchronisation temporelle de sources d’informations hétérogènes.
L’utilisation du langage OCaml permet de garantir une plus grande fiabilité des programmes. OCsigen tire partie de technique de typage avancées afin d’éviter de nombreux bugs et même assurer le respect des standards. Ainsi il n’est pas possible d’écrire des programmes qui généreront des pages HTML invalides. L’utilisation très poussée du typage [CaChBa2013, Canou2011] a pour effet de réduire beaucoup le temps de débogage.
On cherche alors à combiner l’approche multi-tiers typée à la Ocsigen avec un DSL réactif pour construire un orchestrateur de contenus multimédia riches et interactifs permettant d’ajouter dynamiquement des nouveaux traitements et de nouveaux flux à synchroniser, avec une garantie sur la composition de ceux-ci. On s’intéressera aux expérimentations d’intégration de programmation réactive en ML comme RML (http://rml.lri.fr/) et REAC (http://erratique.ch/software/react).
{{Références}}
[BaChHe2012] Vincent Balat, V, Pierre Chambart, Grégoire Henry. « Client-server Web applications with OCsigen » International World Wide Web Conference, dev track, 4 pages, Lyon, 2012.
[BeNiSe2011] Gérard Berry, C. Nicolas, Manuel Serrano. « HipHop : A Synchronous Reactive Extension for Hop », Proceedings of the PLASTIC’11 worksHop, Portland, USA, 2011.
[CaChBa2013] Benjamin Canou, Emmanuel Chailloux, Vincent Balat. « A Declarative-friendly API for Web Document Manipulation », International Symposium on Practical Aspects of Declarative Languages (PADL 2013), Lecture Notes in Computer Science, 15 pages, (Springer Verlag), 2013.
[Canou2011] Benjamin Canou, 'Programmation Web Typée', Thèse de Doctorat, Université Pierre et Marie Curie (UPMC), octobre 2011.
[SeQu2010a] Manuel Serrano, Christian Queinnec. « HTML5 Video portable avec Hop », Gnu Linux Magazine France, Jan, 2010.
[SeQu2010b] Manuel Serrano, Christian Queinnec. « A multi-tier semantics for Hop « , Higher Order and Symbolic Computation, 2010. »,
{{Liens}}
hip-hop : http://hop.inria.fr/
Ocsigen : http://ocsigen.org/
RML : http://rml.lri.fr/
REAC : http://erratique.ch/software/react
Doctorant.e: El Sibaie Besognet Remy