À propos du cours
Ce cours vise à introduire le paradigme de programmation fonctionnel, notamment dans le contexte de la concurrence et des domain-specific languages.
Vous y verrez notamment comment l’absence d’état permet de rapprocher mathématiques et programmation tout en offrant de singuliers avantages pour la concurrence. Le fonctionnel permet également de considérer les fonctions comme des first class citizen, offrant la possibilité de s’affranchir en grande partie d’une pensée linéaire du code par le biais des lambdas et des fonctions d’ordre supérieur.
Ce que vous apprendrez
- Concepts et paradigmes des langages de programmation
- Evaluation des expressions.
- Absence d’état, transparence référentielle, fonctions pures, raisonnement à propos des programmes
- Evaluation avancée ou retardée (eager vs lazy)
- Types algébriques, inférence et pattern matching
- Fonctions de rang supérieur et récursion
- Programmation multiparadigmes et concurrente
- Parallélisme sans état
- Gérer la concurrence à l’aide du modèle acteurs.
- Projets applicatifs (agents concurrents, reactive programming, ...)
Enseignant·es
Options d’inscription
24-25 / 205.1 - Functional prog. 24-25 / 205.1 - FuncProg
- Donné en : 2ème année
- Périodes hebdomadaires : 3
- Semestre: Printemps
Ce cours vise à introduire le paradigme de programmation fonctionnel, notamment dans le contexte de la concurrence et des domain-specific languages.
Vous y verrez notamment comment l’absence d’état permet de rapprocher mathématiques et programmation tout en offrant de singuliers avantages pour la concurrence. Le fonctionnel permet également de considérer les fonctions comme des first class citizen, offrant la possibilité de s’affranchir en grande partie d’une pensée linéaire du code par le biais des lambdas et des fonctions d’ordre supérieur.
- Enseignant: Pierre-André Mudry