Abstraction Concrète : Module Date


Ce module utilise une structure particulière de liste, composée de paires. Les listes appartenant à cette famille, sont appelées les A-listes. Les éléments des A-listes sont considérées comme des paires (clé, valeur).

La fonction mem_assoc effectue la recherche, à partir d’une clé, d’une paire dans une A-liste, et renvoie la valeur true, si la clé est trouvée, false sinon.
La fonction assoc effectue la recherche, à partir d’une clé, d’une paire dans une A-liste, et renvoie la valeur associée à la clé dans la paire, si la clé est trouvée, sinon elle déclenche l’exception Not_found.
La fonction prédicat est_jour (resp. est_mois) vérifie que la chaîne de caractères donnée en argument fait partie de la liste des jours (resp. de la liste des mois).
La fonction jour_of_num (resp. mois_of_num) donne le nom du jour (resp. du mois) à partir du numéro de position dans la semaine (resp. dans l’année).
La fonction jjj_of_num (resp. mmm_of_num) retourne les 3 premiers caractères du nom du jour (resp. du mois) à partir du numéro de position dans la semaine (resp. dans l’année).
La fonction num_of_jour (resp. num_of_mois) donne le numéro du jour (resp. du mois) en recherchant son nom dans la liste des jours (resp. dans la liste des mois).