logo EDITE Benjamin CANOU
Benjamin CANOU
État académique
Thèse soutenue le 2011-09-29
Sujet: Programmation Web Typée
Direction de thèse:
Ellipse bleue: doctorant, ellipse jaune: docteur, rectangle vert: permanent, rectangle jaune: HDR. Trait vert: encadrant de thèse, trait bleu: directeur de thèse, pointillé: jury d'évaluation à mi-parcours ou jury de thèse.
Productions scientifiques
Fast and sound random generation for automated testing and benchmarking in Objective Caml
International Conference on Functional Programming, Royaume-Uni 2009
O'Browser : Objective Caml on browsers
We present a way to run Objective Caml programs on a standard, unmodified web browser, with a compatible data representation and execution model, including concurrency. To achieve this, we designed a bytecode interpreter in JavaScript, as well as an implementation of the runtime library. Since the web browser does not provide the same interaction mechanisms as a typical Objective Caml environment, we provide an add-on to the standard library, enabling interaction with the web page. As a result, one can now build the client side of a web application with the standard Objective Caml compiler and run it on any modern web browser.
Proceedings of the 2008 ACM SIGPLAN Workshop on ML The 2008 ACM SIGPLAN Workshop on MLproceeding with peer review 2008-09-21
Programmation Web Typée
Experience Report: Using Objective Caml to develop safety-critical embedded tool in a certificaiton framework
International Conference of Functional Programming ICFP 09 International Conference of Functional Programming ICFP 09proceeding with peer review 2009-09
OC4MC: Objective Caml for Multicore Architectures
Objective Caml is a famous dialect of the ML family languages. It is well-known for its performance as a compiled programming language, notably thanks to its incremental generational automatic memory collection. However, for historical reasons, the latter was built for monocore processors. One consequence is the runtime library assumes there is effectively no more than one thread running at a time, which allows many optimisations for monocore architectures: very few thread mutexes are sufficient to prevent more than a single thread to run at a time. This makes memory allocation and collection quite easier. The way it was built makes it not possible to take advantage of now widespread multicore CPU architectures. This paper presents our feedback on removing Objective Caml's garbage collector and designing a "Stop-The-World Stop&Copy" garbage collector to permit threads to take advantage of multicore architectures.
Draft Proceedings of the 21st Symposium on Implementation and Application of Functional Languages. 21st Symposium on Implementation and Application of Functional Languagesproceeding with peer review 2009-09-23
Soutenance: 2011-09-29
Rapporteurs: Jacques GARRIGUE    Peter VAN ROY