Installation de OCaml v3.09.3

[sur Windows XP]

Tutorial créé par Johann FRADJ [M1 Info] le 11 novembre 2006

ETAPE 1 : Installer le système OCAML

Avant de commencer une petite précision s’impose : pour faire du OCaml vous n’avez aucunement besoin d’installer l’environnement Cygwin (Cependant cette simulation d'une couche ressemblant à Unix pour Windows pourra vous servir plus tard pour vos études si vous ne voulez pas installer une version de Linux sur votre PC).

Au moment d'écrire ces lignes, il en est à la version 3.09.3. Vous allez sur le site de l'INRIA http://caml.inria.fr/ocaml/release.fr.html#id2259210 et vous récupérez ce qui vous intéresse :

Vous enregistrez la doc où vous voulez. Téléchargez l'auto-installeur (7.5 Mo). Une fois reçu, un simple double-clic et l'installation se lance (pour les habitués de Windows : ne pas se moquer...). Cliquez sur next, là choisir le répertoire de destination (là où vous voulez l'installer, vous pouvez laisser le chemin par défaut), cliquez à nouveau sur next, puis une autre fois sur next. Laissez toutes les options cochées par défaut et cliquez encore sur next. Enfin cliquez sur install. Une fois l'installation terminée, cliquez sur finish et là une fenêtre s'ouvre avec affiché en première ligne Objective Caml version 3.09.3. Bravo, l'installation est finie, fermez cette fenêtre. Ne vous réjouissez pas trop vite, une petite vérification s'impose... Cliquez sur le bouton démarrer de Windows puis sur Exécuter, et là dans la fenêtre tapez : cmd. Une fenêtre (toute noire) s'ouvre c'est le terminal de Windows (DOS). Tapez directement ocaml puis validez avec la touche Entrée. Là vous devriez voir une nouvelle fois la phrase Objective Caml version 3.09.3. Si il vous répond qu'il ne connaît pas la commande c'est que votre variable d'environnement PATH n’a pas été mise à jour (ce qui ne devrait pratiquement jamais arriver), si vous êtes dans ce cas envoyez-moi un mail à l’adresse suivante : fradj.johann@etu.unice.fr je vous indiquerai la manipulation à faire.

A partir de maintenant, réjouissez-vous, le système OCaml est avec vous en ligne de commande :

$ ocaml
Objective Caml version 3.09.3
# let rec fac(n) = if n=0 then 1 else n*fac(n-1);;
val fac : int -> int = <fun>
# fac(10);;
- : int = 3628800
# #quit;;
$
			

Le chameau répond. Je quitte proprement par un #quit;; (Attention à bien mettre un "#") Très bon début... Mais faire du Caml en ligne de commande c'est vraiment tristounet !

ETAPE 2 : Installer EMACS

On va donc télécharger un Emacs stable disponible ici : emacs-21.3.tar.gz

Je vous laisse quelques minutes pour le télécharger, je vais boire un thé (désolé je ne bois pas de café ! lol) ...

De retour ? Bon on y va...

Une fois l'archive sur votre bureau, il faut la décompacter. Ici un utiliatire comme winrar fera l'affaire. Il vous faut extraire le dossier emacs-21.3 puis le deplacer là où vous voulez l'installer (par exemple c:\Program Files\) renommez-le Emacs (juste pour faire beau). Allez dans le dossier c:\Program Files\Emacs\bin et là double-cliquez sur addpm une fenêtre s'ouvre vous demandant si vous voulez installer Emacs (je vous laisse choisir la réponse...). Voilà votre Emacs est maintenant installé et vous avez des raccourcis pour l'atteindre un peu de partout.

ETAPE 3 : Configurer le mode TUAREG dans EMACS

Emacs a un mode spécialisé pour la plupart des langages de programmation [Lisp, Scheme, Java, C...]. Lorsqu'un nouveau langage apparaît, quelqu'un se dévoue en général pour programmer un nouveau mode pour Emacs, qui reconnaîtra l'extension de fichier et ajoutera automatiquement un nouveau menu, des coloriages syntaxiques, etc. Vous trouverez sur la page Web d'Albert Cohen le mode TUAREG qui permet de programmer en OCAML sous Emacs. Je pourrais vous laisser le télécharger et l'installer seul étant donné que les explications de la page Web sont claires pour l'installation, mais je suis plus gentil que ça :

ETAPE 4 : Débuter en CAML sous EMACS

On croise les doigts ? Lancez EMACS et demandez l'ouverture d'un fichier en CAML en tapant C-x-C-f (ce qui signifie Control-x Control-f) puis de taper un nom de fichier d'extension .ml, par exemple fac.ml pour programmer une factorielle. EMACS reconnaît l'extension d'un fichier CAML et passe en mode TUAREG [il le dit en bas de sa fenêtre et ajoute un menu en haut].

Un fichier sera une suite d'expressions CAML, notamment des définitions et des jeux de tests, par exemple :

let rec fac(x) = if x=0 then 1 else x*fac(x-1)
in fac(5);;

dont au passage la contrepartie en Scheme serait :

(letrec ((fac (lambda (x) (if (= x 0) 1 (* x (fac (- x 1))))))) (fac 5))

mais ne nous égarons pas... Le menu Tuareg d'EMACS propose en haut Interactive Mode/Evaluate Buffer.

Essayez ! La fenêtre est coupée en deux, et les expressions du haut sont évaluées en bas, un peu comme avec DrScheme :

Vous pouvez aussi entrer des évaluations directement au toplevel dans la fenêtre du bas, le prompt vous attend. Et nous nous arrêterons là...