Hugoprépas 3

Espace privé 

Projet de bibliothèque Caml

par Quentin FORTIER le 11 novembre 2017
Tous vos fichiers doivent être envoyés, si possible en .zip, à qqfortier@gmail.com et au plus tard le 9 novembre.
Pour les utilisateurs de WinCaml: le chemin d'un fichier chargé avec load "..." doit être relatif à l'emplacement de WinCaml.exe, le plus simple étant de mettre tous les fichiers .ml dans le même dossier que WinCaml.exe

Vous devez implémenter une bibliothèque Caml contenant (certaines) des fonctions et structures vues en cours/TD/DM.

Dans bib_structures.pdf vous trouverez quelques conseils.

Pour vous aider je vous donne quelques fichiers pré-remplis (dans bibliotheque.zip):

util.ml contient des fonctions utilitaires (liste aléatoire, calcul de temps d'exécution... vous pouvez ajouter l'exponentiation rapide par exemple)

arb.ml et abr.ml contient quelques lignes de code sur les arbres

draw.ml (code compliqué, ne pas lire): draw__tree a f permet d'afficher l'arbre a de type 'a arbre_b en utilisant f : 'a -> string pour afficher les sommets.

dico.ml contient la structure abstraite dictionnaire avec une implémentation par table de hachage

test.ml contient des exemples d'utilisation

Références sur Caml: http://pauillac.inria.fr/~cheno/refcaml.pdf
https://caml.inria.fr/distrib/books/llc.pdf

Il peut être intéressant de regarder les choix d'implémentations de la bibliothèque standard de Caml (et Python): voir caml.zip (et https://wiki.python.org/moin/TimeComplexity )

Pour tout appel au secours: qqfortier@gmail.com

Lycée Victor Hugo | 1 rue Rembrandt 25000 Besançon | Tél : 03 81 41 98 88
Mentions légales