A mon avis ça serait dommage d'en rester là et ça vaudrait le coup de faire un micro effort de plus pour gagner du temps par la suite.
Alors, point par point :
- ocaml mon fichier dans le terminal exécute convenablement mes programmes ; cool
- pour créer un exécutable (compiler) j'avoue que pour le moment ça me dépasse, ça va me prendre trop de temps pour comprendre, je garde ça sous la main
Super ! Pour ce qui est de compiler, effectivement, si tu n'utilises OCaml que dans un but éducatif, peut-être que ça ne vaut pas le coup d'apprendre à compiler... Ceci dit c'est sans doute plus simple que tu ne le penses ! En gros il suffit d'écrire ton code normalement, et d'y inclure : soit quelque chose qui permette au code d'être exécuté (sans quoi si tu ne fais que définir des fonctions, quand tu lanceras ton programme il ne fera pas grand chose. Pour ça tu peux faire quelque chose comme :
1 2 3 4 5 6
| let f x =
(* la fonction que tu veux exécuter. Elle doit écrire dans la sortie
* standard ou dans un fichier, sinon tu ne pourras pas voir le résultat
* de son exécution ! *)
let _ = f 1. (* (par exemple) *) |
ou, mieux, définir une fonction main (principale, pas chirale), par ex :
1 2 3 4 5 6 7 8
| let f x =
(* pareil *)
let main () =
let arg = float_of_string Sys.argv.(1) in
f arg
let _ = main () |
Ce qui a l'avantage de te permettre de passer des arguments à ton programme en ligne de commande...
Ensuite, la compilation est très simple. Pour compiler un programme simple en natif ça sera quelque chose comme
ocamlopt -o mon_programme mon_code_source.ml
Et voilà, ensuite tu pourras lancer
ou
Selon la solution que tu auras préférée.
Après, il existe plein d'autres outils pour compiler, etc... Comme je le disais, si tu n'utilises OCaml qu'à des fins éducatives, ce n'est peut-être pas la peine de te prendre la tête (sauf si t'as besoin que ton code aille plus vite - auquel cas en compilant en natif ton code s'exécutera ~10 fois plus vite ). Mais si tu comptes un jour écrire des programmes (même des petits programmes pourris que seul toi utilises, par ex. pour faire des simulations dans le cadre d'une activité scientifique ) alors n'hésite plus et lance toi maintenant.
- ocaml-top ne semble dispo que pour windows et j'ai un mac
Non, il est bien disponible pour Windows, Mac et, heureusement car il n'y a que ça qui compte à vrai dire, Linux Plus sérieusement, c'est vrai que sur leur site on a l'impression que c'est soit via OPAM, soit par les sources pour Linux et OSX... Mais dans ce cas là, OPAM est le meilleurs choix je pense.
- pour opam je suis allé ici donc :
http://opam.ocaml.org/doc/Quick_Install.html et j'ai tapé les deux lignes de commande hebrew mountain lion et port mais il ne connait pas les instructions port ni brew donc là aussi je suis dépassé
C'est normal qu'il ne connaisse pas ces commandes si tu n'as pas installé ces logiciels ! Ces logiciels sont des gestionnaires de paquets, c'est à dire qu'en gros ils se chargent d'installer les logiciels à ta place. Je ne sais pas comment font les gens qui vivent sans ce genre d'outil, mais un exemple des avantages fournis par ce genre de machins (à moduler selon les dépôts utilisés...) :
- Installation automatique, sans avoir rien à faire
- Garantie que le logiciel installé sera compatible avec ton système (pas de mauvaise surprise en le démarrant a priori)
- Si jamais ton truc dépend d'un autre paquet, il se chargera tout seul de faire ce qu'il faut si tu veux mettre à jour (ou enlever -> dans ce cas là il te dira que l'autre devra aussi être enlevé) ce paquet. Donc pas de mauvaise surprise quand tu fais une mise à jour et que certains logiciels que tu as installés à la main (éventuellement en les configurant directement dans /etc ) ne marchent plus
- La garantie d'un logiciel sans virus
- ...
Bref, si ça ne te convainc pas je ne sais pas ce qu'il te faut ! Je pense vraiment que tu gagnerais à installer un gestionnaire de paquets.
- enfin ici je télécharg et décompresse bien le truc ensuite j'ai un dossier utop-1.5 avec plein de trucs dedans dont je ne sais que faire...
Nan te prends pas la tête avec ça. Pour ma part j'avais installé Utop à la main la première fois mais j'avais merdé et j'arrivais pas à charger certaines librairies installées via les dépôts Debian... Bref -> OPAM !
j'aurais bien voulu travailler dans xcode mais bon
C'est un éditeur de texte pour Mac ? Si c'est ton éditeur de texte de choix, très bien, mais Vim et Emacs (et d'autres, mais je sais pas s'ils existent pour Mac) fonctionnent très bien avec OCaml. Et la plupart des éditeurs de texte te permettre de compiler facilement (ceci dit c'est pas toujours super simple à configurer, et vu que ça passe généralement par des makefiles, c'est peut-être pas méga adapté pour toi).
Bref, voilà, j'ai rien à ajouter de plus. J'ai l'impression qu'OCaml-top serait l'idéal pour toi (si tu comptes coder beaucoup autant choisir un super éditeur de texte que tu configures ensuite), et à mon avis ça vaut la peine d'essayer de l'installer, quitte à y perdre quelque heures (mais si au final ça te fait installer un gestionnaire de paquets pour ton OS et OPAM, tu rentabiliseras très vite ce temps par la suite )
Bonne chance !
PS: j'avais oublié le lien pour Homebrew : http://brew.sh/
Partager