{{tag>programmation BROUILLON}} ---- ====== Objective Caml ====== Ocaml est le successeur de Caml Light. C'est un langage multi-paradigmes, qui peut être interprété et compilé. Pour le CamlLight, voir [[caml_light|ici]] :) =====Installation===== Pour installer OCaml et ses dépendances, il suffit d'installer le paquet **[[apt>ocaml]]** sudo apt-get install ocaml Le métapaquet **[[apt>ocaml-core]]** installe OCaml, ses dépendances et de nombreux outils dont **[[apt>ocaml-tools]]** =====Utilisation===== ====Interpréteur==== Pour lancer l'interpréteur, on entre la commande suivante dans un terminal : ocaml Pour plus de flexibilité, on peut lancer l'interpréteur avec la commande suivante : ledit ocaml Pour quitter l'interpréteur, il faut entrer (avec le #) : #quit ;; ====Compiler==== Pour compiler, on utilise **ocamlc** : ocamlc -o programme code_source.ml Pour exécuter le programme, il suffit ensuite de l'exécuter : ./programme =====Editeurs de texte===== ====Vim==== Le paquet **[[apt>ocaml-tools]]** fournit **omlet** qui améliore l'indentation de code OCaml dans **[[:Vim]]**. ====Geany==== Pour que **[[:Geany]]** sache qu'il s'agit de code OCaml, il suffit de sélectionner dans les menus : //Document -> Définir le type de fichier -> Langages de programmation -> Fichier source (O)Caml// ou bien d'enregistrer le fichier au format *.ml. ====Emacs==== FIXME((utilisateur d'emacs requis pour tester ces paquets)) ===ocaml-mode=== Le paquet **[[apt>ocaml-mode]]** vise à améliorer la prise en charge d'OCaml dans **[[:Emacs]]** ===tuareg-mode=== Le paquet **[[apt>tuareg-mode]]** a pour objectif d'obtenir de meilleurs résultats que **ocaml-mode** ====gEdit==== Propose la coloration syntaxique. Il est facile d'écrire des scripts "external tool" pour améliorer le développement en OCaml. =====Liens===== * (fr) [[https://caml.inria.fr/ocaml/index.fr.html|Présentation générale]] * (en) [[http://caml.inria.fr/pub/docs/manual-ocaml/index.html|Documentation and user's manual]] * (en) [[http://mirror.ocamlcore.org/ocaml-tutorial.org/|Objective CAML Tutorial]] * (fr) [[http://mirror.ocamlcore.org/ocaml-tutorial.org/fr.html|Tutoriel Objective CAML]] (traduction du tutoriel ci-dessus, non terminée) * (fr) [[http://mirror.ocamlcore.org/caml.inria.fr/resources/doc/guides/guidelines.fr.html|Conseils de programmation Caml]] * (en) [[http://queue.acm.org/detail.cfm?id=2038036|OCaml for the masses]] ---- //Contributeurs principaux : [[:utilisateurs:Kshegzyaj]]//