Informations générales
Volumes horaires
- CM 15.0
- Projet -
- TD 15.0
- Stage -
- TP 15.0
- DS 2.0
Crédits ECTSCrédits ECTS
0.6
Objectif(s)
Comprendre le paradigme de la programmation fonctionnelle dans le langage OCaml.
Être apte à en reconnaître l'emploi et l'utilisation dans des situations variées y compris avec d'autres langages comme Java ou C.
Comprendre et maîtriser des situations élémentaires d'emploi de la programmation récursive et des types récursifs.
Être capable d'écrire un interpréteur pour un langage impérative simple.
Contenu(s)
Ce cours constitue une introduction à la programmation fonctionnelle avec l'utilisation du langage Ocaml. Le cours s'appuie sur des séances de TD avec machine et des séances de TP consacrées à des applications plus avancées.
Les thèmes suivants sont abordés:
-Bases de OCaml
-Structures de données et de contrôle récursives
-Mécanisme d'évaluation
-Fonctions d'ordre supérieur
-Modules et foncteurs
-Typage, inférence de types, polymorphisme
-Exceptions, références, types mutables
-Flots et analyse récursive descendante
-Initiation au lambda-calcul
Notions de programmation impérative, notion de récursivité
Contrôle des connaissances
20% contrôle continu :
- Test intermédiaire de programmation Ocaml
80% examen terminal : Évaluation projet - Évaluation basée sur les livrables suivants:
**# Compte-rendus de TD intermédiaires
**# Rendu final de projet (par groupe)
**# Entretien individuel d'évaluation
En cas de non validation d’une UE, le jury peut autoriser l’élève ingénieur à passer des épreuves complémentaires pour la valider.
Informations complémentaires
Code de l'enseignement : KAIN7M05
Langue(s) d'enseignement : 
Vous pouvez retrouver ce cours dans la liste de tous les cours.
Bibliographie
- https://ocaml.org/
- https://caml.inria.fr/pub/docs/manual-ocaml-4.07/
- Emmanuel Chailloux, Pascal Manoury et Bruno Pagano. Développement d'applications avec Objective Caml. Editions O'Reilly, Paris, 2000.