Cours Programmation Fonctionnelle, année 2017
      
      
      
      Infos
      
	- 
	  Soutenances du projet (dates prévisionnelles) :
	  
	    - Luminy :  le mardi 12/12 à 8h00.
- Saint-Jérôme : le mercredi 13/12 à 14h00.
 Date limite pour rendre le projet : le mercredi 6/12 à
	  23h59.
- 
	  Début des cours :
	  
	    - Luminy :  le mardi 5/09 à 9h00 en Amphi 7 (vérifiez sur ADE).
- Saint-Jérôme : le mercredi 6/09 en salle D2 à 9h00  (vérifiez sur ADE).
 
Documents du cours 
	    Cours
  -   Transparents 1er cours :
    
      - 
	introduction, ch01 ;
      
- 
	ghc et la plateforme Haskell, premiers pas,
	conventions lexicales, ch02 ;
- types élémentaires et
	dérivés, polymorphisme, ch03.
 
-   Transparents 2ème cours :
    
      - polymorphisme, surcharge et classes, ch03 ;
- 
	conditionnels, conditions de garde, filtrage, expression
	lambda, sections, ch04 ;
      
- compréhension sur les
	listes, ch05.
 
-   Transparents 3ème cours :
    
      - récursion, ch06 ;
- fonctions d'ordre supérieur, ch07
      ;
- programmes interactifs ch09.
      
 
-  Transparents 4ème cours :
    
      - définition de types et de classes, ch10 ;
- retoour sur les monades, ch09 ;
-  parsing monadique avec la
      bilbliothèque Parsec,
      ch11.
      
 
-   Transparents 5ème cours : 
      -  le lambda-calcul non typé, stratégies d'évaluation, ch14 ;
-  l'évaluation paresseuse dans
	Haskell, ch12.
 
TDs et TPs
-   Fiche de TD  
no. 1.
-   Fiche de TP  
no. 1.
-   Fiche de TD  
no. 2.
-   Fiche de TP  
no. 2.
-   Fiche de TD  
no. 3.
-   Fiche de TP  
no. 3.
-   Fiche de TD  
no. 4.
-   Fiche de TP  
no. 4.
-   Fiche de TD  
no. 5.
-  TP5 : le but du TP est d'analyser, avec les encadrants de TP,
votre avancement (et vos difficultés éventuelles) avec le projet.  
Code
Un peu de code 
par ici.
Le texte du projet par ici.
Ce texte étant susceptible de modifications (améliorations) vous
êtes invités à le télécharger à nouveau avec régularité.
Attention :
- Le projet se fait impérativement en binôme.
- Rendu du projet. La date envisagée pour rendre le projet est le
  mercredi 6 decembre 2017, 23h59 dernier délai. Envoyez votre projet par
  courriel (vos sources seront annexes en forme d’un archive zip ou
  tgz) à votre encadrant de TP. Si retard, des points de pénalité
  seront appliqués à la notation.
- Dates des soutenances : le 12/12 (Luminy) et le 13/12 (St-Jerome).
  L'absence
	      à la soutenance entraînera la note 0 au projet. 
- Attention : il n'existe pas une note de projet de 2ème session,
  donc  la note du projet n'est pas rattrapable. 
- Pour intégrer votre code avec d'autres bibliothèques Haskell,
  vous devez utiliser l'outil cabal. Si cet outil n'est pas
  installé dans votre machine, vous pouvez le télé-charger depuis
  cette page.
Références
Autres lectures
Ressources en français
Se preparer à l'examen
Les annales des examens passés sont
disponibles ici.
Page web du cours de l'année
dernière ici.
Calcul de la note finale
- 
Première session : 
  NF = 0.3*PROJET + 0.7*EXAMEN
- 
Session rattrapage : 
  NF = max(EXAMEN,0.3*PROJET + 0.7*EXAMEN)
 oùEXAMENest la note de l'examen de II session.
Les                             documents sont permis à l'examen (mais pas les calculettes ou les ordinateurs).