Difference between revisions of "Seminar/2013-10-09"
From LRDE
Line 1: | Line 1: | ||
{{SeminarHeader |
{{SeminarHeader |
||
| id = 2013-10-09 |
| id = 2013-10-09 |
||
− | | date = Mercredi 9 octobre 2013 |
+ | | date = Mercredi 9 octobre 2013 |
| schedule = 11h-12h |
| schedule = 11h-12h |
||
| location = Salle Lα du LRDE |
| location = Salle Lα du LRDE |
Latest revision as of 18:07, 4 December 2018
Mercredi 9 octobre 2013, 11h-12h, Salle Lα du LRDE
GNU epsilon, un langage de programmation extensible
- Documents
- saiu.pdf
- Keywords
- language, functional, compilation
Luca Saiu - Projet GNU, INRIA
Le réductionnisme est une technique réaliste de conception et implantation de vrais langages de programmation, et conduit à des solutions plus faciles à étendre, expérimenter et analyser. Je vais décrire la conception et l'implantation de GNU epsilon, un langage de programmation extensible, basé sur un langage-noyau minimaliste impératif du premier ordre, équipé de mécanismes d'abstraction forts et avec des possibilités de réflexion et auto-modification. Le langage peut être étendu à des niveaux très hauts: en utilisant des macros à la Lisp et des transformations de code à code réécrivant les expressions étendues en expressions-noyau, on arrive à ajouter les clôtures et les continuations de première classe au dessus du noyau.
Les programmes qui ne s'auto-modifient pas peuvent être analysés
formellement, grâce à la simplicité de la sémantique. Je vais parler
rapidement d'une analyse statique dont j'ai prouvé une propriété de
«soundness» par rapport à la sémantique dynamique. Le langage se prête à une
implantation efficace: je vais montrer un prototype de compilateur natif
particulièrement simple.
Luca Saiu, programmeur expérimenté et spécialiste de langages, a obtenu
son master à l'Université de Pise et son doctorat à l'Université Paris
13. Il a travaillé à l'INRIA sur le support multi-cœur d'OCaml. Le
langage de programmation epsilon, logiciel GNU, est son projet le plus
ambitieux. Luca Saiu est également co-auteur de Marionnet, un simulateur
de réseaux en OCaml, utilisé pour la pédagogie en France et à l'étranger.
http://www.dailymotion.com/video/k41FJWRyy1QMDm4KuIFhttp://ageinghacker.net, http://www.gnu.org/projects/epsilon