">
%%http://www.infop6.jussieu.fr/lmd/2004/licence/ue/prec-2004oct/licence2004.css">
%%%
%%
%%href="licence.css">
%%href="http://www.infop6.jussieu.fr/licence/2003/licence2003.css">
Environnement de développement intégré portable pour Objectif Caml
Emmanuel Chailloux
Présentation générale
Objective Caml
Objective Caml, dévéloppé à l'Inria (
O'Caml ), est l'un des dialectes ML les plus connus. Ses qualités d'expressivité,
de sûreté et d'efficacité sont appréciées par une communauté de programmeurs
en nombre croissant. Pour améliorer sa diffusion on cherche à le doter
d'un environneement de développement intégré portable sur les plate-formes
de développement classiques (Windows, macosx, Linux).
ocamil
Le compilateur expérimental
ocamil permet d'étudier l'intérêt de la plate-forme d'exécution
.NET pour les langages fonctionnels statiquement typés. Plusieurs
publications décrivent les techniques employées
pour obtenir un compilateur complet d'OCaml qui engendre du code MSIL géré.
eclipse
Par ailleurs l'environnement de développement
eclipse se développe de manière important. Son intérêt est d'avopir été dès le début conçu pour lui ajouter des fonctionnalités par un mécanisme de plugin. Eclipse est porté sur les principales plate-formes de développement (Windows, MacOSX, Linux, ...). Une deuxième version d'un
plugin pour O'Caml a été réalisé au printemps dernier.
mono
mono est une plate-forme de développement en open source basée sur les
spécifications de .NET. Il permet de construire des applications .NET
pour Linux ou macosx.
Projet
Ce projet consiste en la réalisation d'un environnement de développement intégré portable pour O'Caml. Cette réalisation peut être découpée en deux parties :
la première plus ingénierie et la deuxième plus recherche.
-
une partie intégration qui consiste à développer un plugin
Eclipse pour O'Caml utilisant le compilateur ocamil en le ciblant vers mono;
- une partie développement d'outils de mise au point
en ajoutant à ce plugin des
fonctionnalités de trace et d'exploration des valeurs ocamil à l'exécution
en profitant de l'information de type engendrée à la compilation.
La première partie devra d'une part porter le plugin précédent sur
la dernière version d'eclipse et d'autre part adapter le compilateur ocamil
à mono. On obtient ainsi un environnement de développement intégré portable.
La deuxième partie nécessite de formaliser la détermination
de type O'Caml à partir du type IL (en fonction de l'information
de typage transmise au compilateur) dans le but de
développer un outil de mise au point (our explorer des donnnées
et les modifier si besoin est) à intégrer dans le plugin.
Au final, on désire obtenir un outil pratique et utilisable pour le développement d'applications en Objective Caml.
Profil recherché
Le volume de travail pour chaque partie de ce projet est évalué à 5 mois pour un étudiant de M2.
Il est clair que connaître les langages O'Caml et Java est nécessaire
et qu'avoir suivi un cours de compilation est un plus.
Contact
Emmanuel Chailloux
Equipe PPS
Université Paris 6
175, rue du Chevaleret
75013 Paris
tél : 01 44 27 6 199
mél : Emmanuel.Chailloux@pps.jussieu.fr
web : http://www.pps.jussieu.fr/~emmanuel
This document was translated from LATEX by
HEVEA.