Author: Christian.Queinnec@lip6.fr

## Plan du chapitre

Ce chapitre effectue une comparaison des modèles fonctionnel et impératif du langage Objective CAML tant au niveau du contrôle d'exécution que de la représentation mémoire des valeurs. Le mélange de ces deux styles permet la construction de nouvelles structures de données. La première section étudie cette comparaison par l'exemple. La deuxième section discute les éléments de choix entre composition de fonctions et séquence d'une part, partage ou copie de valeur d'autre part. La troisième section dégage l'intérêt de mélanger ces deux styles pour la création de données fonctionnelles modifiables permettant ainsi la construction de données non complètement évaluées. La quatrième section décrit les streams, flots de données potentiellement infinis, et leur intégration, via le filtrage, dans le langage.