Software

Web development

Myrtle

Myrtle is a set of tools and libraries for easing Web Development, especially using the Google Closure tools and LESS stylesheets.

Eclipse Plugin for LESS

This plugin provides features to edit and compile LESS stylesheet in the Eclipse IDE. LESS is an extension of the CSS stylesheet language with powerful features like variables, nested blocks and mixins.

Eclipse Plugin for Closure Templates

This plugin provides features to edit and compile Closure Templates (aka Soy templates) in the Eclipse IDE.

Eclipse Plugin for JavaScript with Closure Compiler and Closure Library

This plugin extends JSDT, the JavaScript development environment for Eclipse, with some features which are useful for developers using the Closure Compiler and the Closure Library from Google.

EasyXtext

Xtext is a framework for developing Eclipse plugins for Domain Specific Languages. EasyXtext is a library of helper class easing the implementation of Eclipse plugins on top of Xtext.

Scientific software

Dalton

Dalton is a generic and efficient OCaml library for type inference with structural subtyping. It is the type inference engine for the Flow Caml system. I developed this library during my PhD. Its theoretical fundations, as well as a formal proof of its correctness, are presented in the third chapter of my PhD thesis (in French), as well as a conference paper (in English).

Flow Caml

The Flow Caml system is a prototype implementation of an information flow analyzer for the Caml language. Its purpose is basically to allow to write "real" programs and to automatically check that they obey some confidentiality or integrity policy. I developed it during my PhD thesis.

OCaml stuff

Averell

Averell is an OCaml library dealing with graphs. It provides an implementation of several usual algorithms and an interface with the GraphViz toolkit for graphs drawing. It was primarly developed for Dalton, but can be used for other purposes thanks to its genericity.

APM

This package provides basic interface to Linux APM driver for OCaml programs.

Headache

Headache is a simple and lightweight tool for managing headers in source code files. It allows to add and update headers to all files of a project, while adapting the format of the header in each file according to its type (e.g. prepending // in C files, # in shell files or enclosing comments in (* ... *) in OCaml files).

MozCaml

I have also developped, with Maxence Guesdon, a "SideBar tab" for Mozilla and Netscape browsers dedicated to the OCaml language.