Programmation fonctionnelle

Année 2019-2020 - L2 math-info

Résumé

Ce cours est une introduction à la programmation fonctionnelle typée. Le langage support pour le cours est OCaml.

Enseignants

Plan du cours

Note : il s’agit de la première année que ce cours est donné, le contenu est susceptible d’évoluer, il est donné à titre indicatif.

  1. Programmer avec des fonctions
  2. Listes et pattern matching
  3. Les fonctions d’ordre superieur, les types enumeres, recursifs, et polymorphes
  4. Mutation et style imperatif, exceptions
  5. Modules et foncteurs
  6. Programmation orientée objet en OCaml
  7. Paresse, flots, structures de données persistantes

Projet

Le sujet de projet est désormais en ligne! Votre fichier est à rendre avant le 1 décembre sur Moodle (voir les instructions détaillées dans le sujet).

Votre fichier de départ: projet.ml.

Examens

Calendrier et supports de cours

Les supports de cours seront mis en ligne au fur et à mesure.

Pour naviguer dans les transparents en reveal.js, utiliser ESPACE pour avancer, SHIFT+ESPACE pour reculer, est ESC pour basculer avec la vue générale.

Semaine Cours TD TP Corrigés
16/09 Programmer avec des fonctions (pdf) sujet sujet td et tp
23/09 Programmer avec des listes (pdf) code PAS DE TD sujet tp
30/09 PAS DE COURS PAS DE TD PAS DE TP
07/10 Programmer avec des arbres (pdf) PAS DE TD sujet (pdf) swann.ml tp
14/10 Programmer de manière impérative (pdf) sujet sujet
21/10 Exceptions et entrées sorties (pdf) sujet sujet td tp
28/10 PAS DE COURS PAS DE TD PAS DE TP
04/11 PARTIEL BLANC PAS DE TD PAS DE TP PARTIEL BLANC
11/11 PAS DE COURS PAS DE TD PAS DE TP
18/11 Compilation et modules (pdf) sujet DEMO PROJET MI-PARCOURS corrigé
25/11 Modules et foncteurs (pdf) PAS DE TD sujet corrigé
02/12 Labels et objets (pdf) PAS DE TD sujet corrigé
09/12 Programmer de manière paresseuse (pdf) PAS DE TD sujet corrigé

Ressources

Pour trouver de nombreuses ressources sur OCaml, rien de tel que la page ocaml.org. Ci-dessous une petite sélection de ce qui pourrait vous être utile.

Pour les TPs au Petit Valrose

Il vous faudra installer opam, tuareg, et d’autres choses.

La méthode la plus simple est d’utiliser le script d’installation fourni ci-dessous. Dans un terminal tapez

rm -f install-opam-valrose.sh
wget http://deptinfo.unice.fr/~elozes/PF/install-opam-valrose.sh
bash install-opam-valrose.sh

puis répondez y quand on vous demande si vous êtes d’accord pour modifier votre .profile ou votre .bashrc.

Vous pouvez aussi suivre le guide d’installation pas à pas et taper les commandes vous-même, pour comprendre ce que fait le script.

Pour faire le point sur votre installation, lisez ceci.

Logiciels conseillés

Lectures recommandées

Dojos