Forum de l’article

OCamlPro, logiciel et blockchain

modération a priori

Ce forum est modéré a priori : votre contribution n’apparaîtra qu’après avoir été validée par un administrateur du site.

Qui êtes-vous ?
Votre message

Pour créer des paragraphes, laissez simplement des lignes vides.

Lien hypertexte

(Si votre message se réfère à un article publié sur le Web, ou à une page fournissant plus d’informations, vous pouvez indiquer ci-après le titre de la page et son adresse.)

Rappel de la discussion
OCamlPro, logiciel et blockchain
Frédéric LOYER - le 20 septembre 2020

Le langage, loin d’être nouveau est prometteur : paradigme fonctionnel privilégié (mais pas imposé), haut niveau mais assez efficace, typage statique (le langage détecte les erreurs de type à la compilation), mais avec inférence de type (pratique mais discutable : la spécification manuelle du type contribue à documenter une fonction... Ceci dit, on peut préciser le type si on le souhaite, ce qui donne au compilateur l’occasion de trouver des erreurs). Un système un peu comparable aux macros Lisp : une fonction peut analyser - lors de la compilation - une structure de données et générer des fonctions telles que la sérialisation. Cf. https://github.com/ocaml-ppx/ppx_deriving Un système de gestion de package (OPAM) facilite l’installation de bibliothèques tierces (comme PIP avec Python ou Nuget avec .Net).

Il y a cependant des habitudes à prendre. L’expression mathématique "f(x,g(x))" s’écrit "f x (g x)", ce qui est peu commun (sauf peut-être pour les amateurs de Lisp, Scheme ou Haskell). Mais l’intérêt du langage justifie cet effort.

En revanche, sous Windows, il y a des limitations. Le portage a été fait sous Cygwin : ce n’est pas un portage très natif. La bibliothèque Core.Std (très utilisée dans l’ouvrage Real World OCaml d’O’Reilly) doit être remplacée par Core_kernel qu’il faut deviner. Je n’ai pas trouvé le moyen d’intégrer LablGtk pour faire des IHM... il faudra que je réessaye sous Linux où cet environnement sera plus à son aise.