Nous rappelons et développons les bases de l'approche fonctionnelle que sont la composition et la récursivité, et les développons vers des concepts plus avancés incluant : - les types de données algébriques paramétrés ; - les fonctions d'ordre supérieur ; - la généricité ; - l'évaluation non-stricte et les structures infinies ; - les foncteurs, foncteurs applicatifs et monades. Ces notions sont illustrées et mises en œuvre à l'aide du langage Haskell.