Programmation fonctionnelle
Concepts de programmation fonctionnelle en Haskell
Cours 01 : Pourquoi apprendre Haskell ?
Découvrir la programmation fonctionnelle et les particularités de Haskell.
Premières expressions, types, fonctions et évaluation paresseuse.
TP 01 : Premiers pas
Découvrir GHCi et écrire des expressions conditionnelles.
Définir ses premières fonctions, puis pratiquer la récursivité et les gardes.
Cours 02 : On commence à programmer
Tuples, listes, chaînes de caractères et fonctions utiles.
Premiers exemples de pattern matching, notamment sur les listes.
TP 02 : Pattern matching
Déterminer le type d'expressions Haskell.
Redéfinir des fonctions classiques sur les listes.
Cours 03 : Le système de types
Types concrets, variables de type et classes de type.
Contraintes de type et polymorphisme.
TP 03 : Typage
Comprendre l'inférence de type et retrouver le type le plus général d'une expression.
Définir de nouvelles fonctions en s'appuyant sur le système de types.
Cours 04 : Fonctions d'ordre supérieur
Fonctions anonymes, composition et curryfication.
Utiliser les fonctions d'ordre supérieur classiques sur les listes.
TP 04 : Fonctions d'ordre supérieur
Manipuler des fonctions comme des valeurs et les passer en argument.
Pratiquer les lambdas et les transformations de listes.
Cours 05 : Créer de nouveaux types
Synonymes de types et types de données algébriques.
Définir des constructeurs, des paramètres et des contraintes de type.
TP 05 : Typage
Manipuler des valeurs optionnelles avec le type Maybe.
Définir des fonctions sûres sur les listes.