Résumé
Ce chapitre a décrit l'extension objet du langage Objective CAML. La
structuration en classes est une alternative aux modules qui permet
d'une part la modélisation objet d'une application et d'autre part la
réutilisation et la modifiabilité des programmes grâce à l'héritage et
la liaison retardée. Cette extension s'intègre au système de types
d'Objective CAML et lui ajoute la notion de sous-type, permettant ainsi
d'utiliser une instance d'un sous-type en tout endroit où une valeur
du type est attendue. En combinant le sous-typage et la liaison
retardée, on obtient un polymorphisme d'inclusion permettant, par
exemple, de construire des listes homogènes du point de vue des types,
mais hétérogènes du point de vue des comportements.