Accès direct au contenu

  • Application mobile
  • Musée des arts et métiers

Programmation Fonctionnelle : Conception et Analyse

Tous les langages de programmation modernes admettent des traits impératifs, fonctionnels et/ou objets, correspondant à des styles de programmation particuliers. Il convient donc de maitriser chacun de ces styles afin de les mobiliser à bon escient.
Ce cours a pour objectif d'approfondir le paradigme fonctionnel de la programmation par l'...

Public et conditions d'accès

Pré requis : Connaissance d'un langage de programmation.
Public concerné : Toute personne soucieuse d'élargir son champ de compétence en programmation par l'apprentissage de langages fonctionnels et
par l'étude fine de propriétés de programmes.

Objectifs pédagogiques

Tous les langages de programmation modernes admettent des traits impératifs, fonctionnels et/ou objets, correspondant à des styles de programmation particuliers. Il convient donc de maitriser chacun de ces styles afin de les mobiliser à bon escient.
Ce cours a pour objectif d'approfondir le paradigme fonctionnel de la programmation par l'étude d'au moins un langage fondé sur un noyau purement fonctionnel. Il s'attachera aussi a fournir les techniques permettant d'analyser ces programmes. Ce cours est une préparation pour les UES NFP209 et 210 du  parcours Fiabilité des Systèmes (option AISL du diplôme d'ingénieur).

Compétences visées

Connaissance et pratique d'un langage fonctionnel. Mise en oeuvre de programmes fonctionnels sur des structures des données récursives.
Maîtrise des techniques simples d'analyse de programmes fonctionnels.
Préparation au parcours fiabilité des systèmes (pour les UES NFP209 et NFP210 de l'option AISL du diplôme d'ingénieur).

Contenu

Partie 1 : apprentissage de la programmation fonctionnelle
Les bases d'un langage fonctionnel (Ocaml)
Les fonctions, citoyennes de première classe (fonctions récursives, fonctions d'ordre supérieur, polymorphisme)
Les types récursifs et les fonctions qui les exploitent.
Partie 2 : Analyse des programmes fonctionnels.
Ensembles inductifs
Raisonnement par induction et définition par récurrence
Ordres bien-fondés.
Le cours s'organisera autour de cours, d'ED sur machine et de la réalisation
d'un projet dans le langage fonctionnel choisi.

Modalités de l'évaluation

Un examen et un projet (obligatoires).

Bibliographie

  • B. Pagano, P. Manoury, E.Chailloux : Developpement d'applications avec Objective Caml
  • A. Brygoo, T. Durand, M. Pelletier, C. Queinnec, M. Soria : Programmation récursive
  • A. Arnold, I. Guessarian : Mathematiques pour l'informatique
  • Notes de Cours + transparents : M.V. Aponte-Garcia, P. Courtieu

Contact national

Secrétariat Equipe pédagogique AISL
Case 2D4P30, Accés 37.0.36, 2 rue Comté
Paris
Tél : 01 40 27 27 02
Fax : 01 58 80 84 93
Emmanuelle BIAR

Voir le site deptinfo.cnam.fr/new/infos.php?ue=NFP119

Voir les dates et horaires, les lieux d'enseignement et les modes d'inscription sur les sites internet des centres régionaux qui proposent cette formation


Code UE : NFP119

6

Responsable national

Maria-Virginia APONTE-GARCIA