Environnement OCaml

Cette page regroupe quelques instructions/suggestions pour travailler confortablement avec OCaml, que ce soit à l'ENS en salles info ou sur vos machines.

1. Installation spécifique à un OS

(Ignorez cette section si vous travaillez en salles info à l'ENS.)

Windows

Suivre les instructions d'installation sur la page OCaml for Windows. Choisir l'installateur graphique, en version 32-bit ou 64-bit selon votre machine. Cet installateur permet en particulier de choisir les paquets Cygwin à installer. Assurez-vous de choisir les paquets emacs-w32 et emacs. Il faut demander la liste complète (Full) des paquets pour les voir apparaître. Après l'installation (qui peut prendre un peu de temps), vous aurez accès à un environnement de travail de type UNIX en lançant Cygwin.

Alternative : Si l'installation ci-dessus ne fonctionne pas, il est possible d'utiliser une machine virtuelle Linux tournant sous Windows (pas idéal, un peu lent, mais devrait fonctionner tout de même). Télécharger the course Debian live CD et installer VirtualBox. Lancer VirtualBox, créer une nouvelle installation Debian 32-bit, la lancer et choisir de démarrer depuis l'image téléchargée. Ensuite, procéder comme décrit ci-dessous pour un système Debian.

OSX

Installer homebrew puis exécuter dans un terminal la commande
  brew install opam emacs

Debian ou Ubuntu (récent)

Dans un terminal, exécuter (en tant que super-utilisateur) la commande
  apt-get install opam emacs

2. Environnement de travail OCaml

Il est suggéré d'utiliser un éditeur dans lequel OCaml est bien intégré, comme Emacs, Vim ou encore Visual Studio Code. Les trois sont disponibles pour Linux, Mac et Windows et déjà installés à l'ENS. Mais il est également possible d'utiliser un autre éditeur (comme gedit par exemple) et de compiler dans un terminal.

opam

opam est un système de paquets pour OCaml, qui vous permet d'installer des bibliothèques OCaml et des logiciels écrits en OCaml, en téléchargeant leurs sources, en les compilant et en les installant dans votre compte. En particulier, opam n'exige pas de droits super-utilisateur. opam permet aussi d'installer simultanément plusieurs versions du compilateur OCaml sur sa machine. opam est déjà installé à l'ENS.

Avant d'utiliser opam pour la première fois, exécuter dans un terminal les commandes

  opam init
  eval `opam config env`
  opam install tuareg merlin menhir
(et accepter ce qui vous est proposé).

Emacs

Si vous souhaitez utiliser emacs, vous devez installer les modes Tuareg et Merlin pour Emacs avec la commande opam install tuareg merlin et suivre les instructions affichées à l'écran (voir section précédente).

La configuration d'Emacs se fait dans un fichier .emacs situé à la racine de votre compte. L'installation ci-dessus aura ajouté des lignes dans ce fichier. Au final, il pourra ressembler à quelque chose comme ça.

Le mode Merlin compile votre programme chaque fois que vous sauvez (pour signaler les erreurs), mais ne construit pas d'exécutable.

Pour construire un exécutable, vous pouvez appeler le compilateur OCaml directement depuis Emacs avec la commande Meta-x compile (Meta s'obtient avec la touche Alt ou Esc, au choix). Vous pouvez relancer la même commande avec Meta-x recompile. Si le compilateur OCaml signale une erreur, vous pouvez vous placer directement sur la position correspondante avec Meta-x next-error. Vous pouvez simplifier les raccourcis clavier de ces trois commandes en insérant par exemple les lignes suivantes dans votre fichier ~/.emacs :

(global-set-key [f5] 'compile)
(global-set-key [f6] 'recompile)
(global-set-key [f7] 'next-error)
C'est là une façon très efficace de travailler. (Et vous pourrez utiliser ces raccourcis pour toute autre chose que la programmation OCaml.)

Si vous souhaitez des raccourcis Ctrl-C, Ctrl-V, Ctrl-X pour le copier-coller sous Emacs, vous pouvez ajouter la ligne

  (custom-set-variables '(cua-mode t nil (cua-base)))
à votre fichier .emacs pour activer le mode Cua pour Emacs. C'est fait dans le fichier .emacs proposé.

Vim

Le mode Merlin pour Vim s'installe avec la commande opam install merlin. Suivre les instructions affichées à l'écran.

Visual Studio Code

Installer l'extension OCaml (chercher "OCaml" dans les extensions). La documentation est ici. Il faut avoir installé par ailleurs les paquets opam merlin et ocp-ident, avec la commande
  opam install merlin ocp-indent

Merci à Stéphane Lengrand pour son aide dans la préparation de cette page.
retour à la page du cours