Jouer avec ML, un langage que j'aime bien mais que je ne maîtrise pas (encore). J'utilise PolyML, un interprèteur/compilateur et mlton, un compilateur. Ils sont tous deux au standard de SML/NJ, chacun avec quelques variations qui ne m'affectent pas (encore).
On notera que SML/NJ fait partie des ancêtres de OCaml, de l'INRIA, lui-même ancêtre de F# crée par Microsoft.
On notera aussi ma tendance à pratiquer la programmation paresseuse qui consiste à ouvrir l'éditeur de texte, surveiller twitter, s'occuper du repas, revenir à l'éditeur et ainsi de suite. Ca prend du temps...
N'hésitez pas à vous balader dans le wiki: https://github.com/BernardBeefheart/ml-games/wiki (y a encore du boulot, hein?).
C'est un langage fonctionnel sans orientation objet (à la base), deux points qui me conviennent, l'orientation objet de la programmation ne me plaît plus vraiment.
On rouvera bien quelques exemples de code en F# et OCaml, deux membres de la famille ML, légèrements dissidents, ils intègrent une orientation objet.
Il y a du code, essentiellement, du texte, dans le wiki, le tout étant mis à jour avec plus ou moins de régularité.
Le répertoire remember est là pour (re)débuter avec le langage, ce n'est pas la première fois que je l'explore, mais c'est la première fois que je m'y met vraiment pleinement. On y trouve un ensemble de programmes assez courts qui devraient aidé le débutant.
Le répertoire mlb-maker contient pur l'instant un script qui permet de créer un fichier mlb pour une compilation de plusieurs sources avec mlton. Et une version (édulcorée) pour mlton.
Le répertoire blib contient un ensemble de fichiers permetttant de faire une bibliothèque, bien grand mot pour l'instant, et m'évitant de faire d'incessants copier/coller d'un source à l'autre.
Si les curieux explorent les autres répertoires, ils seront déçus pour le moment. J'espère que cela changera rapidement.