L'implémentation du programme est faite en Caml sous la
forme de modules. Le module 'programme' est un foncteur de 3 autres modules
'entree', 'traitement' et 'sortie'. Chacun de ces modules permet de traiter
les différents traitement du problème. Pour permettre la réutilisation
du module traitement avec différents formats d'entrée ou plusieurs
sortie des données possible. On peut de cette façon rentrer les
données au clavier ou donner en entrée un fichier de format SwissProt.
En sortie, on peut effectuer un affichage à l'écran ou récupérer
un fichier. On peut aussi effectuer un autre traitement que Smith&Waterman.
Pour traiter de nouveaux formats d'entrée ou de sortie ou d'autre algorithme
il suffit d'écrire des modules supplémentaires.