info452 - Concepts avancés des langages de programmation

-
Nombre de crédits
- 5
- Pré-requis
- (Licence mention informatique)
- Parcours
- optionnelle pour la mention informatique du master science
-
Objectifs
- Ce cours se propose de présenter plusieurs concepts originaux
apparaissant dans des langages de programmation modernes s'écartant
des langages les plus répandus.
- Organisation
semaine |
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
C (1h30) |
× |
× |
× |
× |
× |
× |
× |
× |
× |
× |
× |
× |
|
TD (1h30) |
|
× |
× |
× |
× |
× |
× |
× |
× |
× |
× |
× |
× |
TP (2h) |
|
|
|
× |
|
× |
|
× |
|
× |
|
× |
|
- Volume de travail personnel étudiant estimé
- environ 50h
- Contrôle et validation des connaissances
-
-
pour les UE sans TP :
sup ( Ex, (2Ex + CC)/3)
- pour les UE avec TP obligatoires :
(2TP + 3 sup(Ex, (2Ex + CC)/3))/5
- Description du contenu
- La présentation de chaque concept s'appuiera sur un langage
particulier. Ces concepts n'ont pas forcément de liens entre eux et
ne sont pas tous disponibles dans tous les langages abordés. Nous
verrons comment ces concepts sont particulièrement bien adaptés à
certaines classes d'applications et comment ils facilitent leur
écriture.
Le cours est divisé en trois parties correspondant chacune à un
concept, un langage associé et une classe d'applications.
-
Typage statique fort et inférence de type
-
-
Langage support : Objective Caml
- Classe d'applications : manipulations symboliques
- Évaluation paresseuse
-
-
Langage support : Haskell
- Classe d'applications : structures de données
potentiellement infinies
- Paradigme synchrone
-
-
Langage support : Esterel
- Classe d'applications : applications réactives
- Responsable(s)
- Pierre Boulet
fichier source pour édition/modification