Journal Gasoline 0.1, cadriciel applicatif pour OCaml

Posté par  (site web personnel) . Licence CC By‑SA.
17
25
oct.
2014

Le projet Gasoline vise à implépementer un cadriciel pour le
développement d'applications de type Unix avec OCaml. Il est
distribué sous licence CeCILL-B.

Les utilisateurs de Gasoline pourront:

  • Rapidement développer des applications types en utilisant des
    patrons d'application comme “filtre Unix” ou “compilateur”.

  • Écrire des application acquerrant leurs
    paramètres de configuration
    de sources variées, comme la ligne de commande, l'environnement ou
    des fichiers de configuration.

  • Écrire des applications organisées autour de
    composants logiciels
    aux responsabilités bien délimitées.

  • Amorcer et terminer facilement des applications complexes grâce à la
    gestion des dépendances pour les composants logiciels.

  • Émettre et filtrer des
    messages de diagnostic
    avec un granularité basée sur les composants logiciels.

Liens

Installation

La procédure d'installation est décrite dans le fichier README du
projet. Elle s'appuie sur BSD Make (souvent nommé bmake) et BSD
Owl
. Ma branche
OPAM

contient un package [gasoline] permettant l'installation de Gasoline.
La procédure d'installation a été testée sous FreeBSD 10.0, Debian
Jessie et Mac OS X.

Qu'est-ce qu'un patron d'application

Pour prendre un exemple simple et bien connu, l'écriture d'un filtre
Unix devrait essentiellement se résumer à la préparation d'une
fonction filter

val filter : parameter -> in_channel -> out_channel -> unit

implémentant le traitement réalisé par le filtre — parameter est le
type fictif des paramètres contrôlant le filtre.

Un patron d'application devrait prendre en charge les tâches
d'intendance, comme l'initialisation des composants logiciels et
l'acqusition des paramètres de configuration.

Plusieurs patrons d'application sont prévus pour la version
0.3.

Exemples de programmes utilisant Gasoline

Le dossier
example
contient trois exemples de programmes.

Le programme
punishment
écrit 100 fois sur sa sortie standard la phrase

I must not talk in class

Il illustre la définition de paramètres de configuration et
l'acquisition des paramètres de configuration depuis des sources
variées.

Le programme
wordcount
est une version à l'organisation sur-développée du classique programme
wc(1). Il illustre l'utilisation de composants logiciels dans un
exemple minimal et très petit.

Le programme
wordgen
analyse une liste de mots et génère des mots supplémentaires ayant les
mêmes caractéristiques. Le dossier de l'exemple contient une liste
tolkien.text rassemblant une liste de noms provenant des œuvres de
Tolkien. Pour générer des mots semblables, on analyse cette liste avec

./wordgen -d . -C tolkien.text

puis on demande la génération de, disons, 16 mots, avec

./wordgen -d . -G tolkien.text -n 16
galdal
arathlor
mirmilothor
eoron
echalad
aerecthilmin
foros
erion
cuarveranwen
tiladhruil
brint
luindor
marin
sulkoron
halia
nengirhuri

L'option -d spécifie le dossier qui doit être utilisé comme
bibliothèque de listes de mots.

Conclusion

Vos commentaires, remarques, idées et bien-sûr vos contributions, sont
les bienvenus!

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.