Ocsigen est une technologie libre de développement de sites et applications Web client-serveur. Une de ses particularités est d'offrir la possibilité d'écrire les côtés client et serveur non seulement dans le même langage, OCaml, mais comme un seul et même programme. Particulièrement bien adaptée au développement d'applications HTML5 très dynamiques, Ocsigen permet également de repenser et simplifier l'implémentation des comportements standard des sites Web traditionnels (signets, bouton « back », liens, formulaires, etc.). En outre, il permet de combiner ces deux approches de manière très naturelle.
Ocsigen met l'accent essentiellement sur deux points : d'une part, offrir un langage très expressif, ce qui permet d'écrire du code simple et court ; d'autre part, aider à produire du code et des applications fiables et faciles à maintenir. C'est la raison pour laquelle Ocsigen utilise OCaml, un langage de programmation compilé très puissant et au système de type très riche. La grande expressivité d'OCaml est complétée par un grand nombre de nouveaux concepts inédits et spécifiques au Web (services, sessions sophistiquées, etc.) qui permettent de simplifier l'implémentation de comportements dynamiques complexes. De plus, Ocsigen exploite au maximum le typage d'OCaml pour qu'un maximum de garanties de fiabilité soient données dès la compilation (par exemple la validité des liens). Cela va même jusqu'à la vérification à la compilation que les pages générées seront conformes aux recommandations du W3C !
NdM : Ocsigen est sous licence LGPL 2.1