D´epartement d’informatique et de recherche op´erationnelle Hiver 2006
Marc Feeley bureau 3341 Description du cours
IFT 2030
Concepts des langages de programmation
(http://www.iro.umontreal.ca/~feeley/cours/ift2030)
Premier cours : lundi 9 janvier, 8h30-10h30, PAA-1177
Ce cours pr´esente les concepts `a la base des langages de programmation. Le cours vise
`a familiariser les ´etudiant(e)s avec des m´ethodes et styles de programmation avanc´es ainsi qu’avec l’implantation de ces langages. Plusieurs styles de programmation seront vus, incluant : fonctionnel, logique, et imp´eratif.
Des langages de programmation repr´esentatifs (Scheme, Prolog et C) seront ´etudi´es
`a tour de rˆole pour explorer chaque style de programmation. Lorsque n´ecessaire pour expliquer certains concepts, des exemples seront tir´es d’autres langages tels que Pascal, C++, Java, Simula et Smalltalk. Nous ne cherchons pas `a former des sp´ecialistes d’aucun des langages ´etudi´es, mais plutˆot `a donner une solide formation de base qui permettra `a l’´etudiant(e) d’approfondir selon sa volont´e l’un ou l’autre des styles de programmation abord´es.
Des travaux de programmation utilisant ces langages permettront aux ´etudiant(e)s d’acqu´erir une exp´erience pratique avec ceux-cis. Le cours n’est pas `a strictement parler un “cours de programmation” car il y a une composante th´eorique importante.
Manuel recommand´e :
1. Ravi Sethi, Programming Languages — Concepts and Constructs, Deuxi`eme
´edition, Addison-Wesley (en vente `a la librairie de l’Universit´e).
Horaire
Jour Heure Lieu Type
Lundi 8h30-10h30 PAA-1177 Cours magistral Mardi 15h30-17h30 PAA-1207/1409 D´emonstration Jeudi 11h30-12h30 PAA-1177 Cours magistral
Calendrier approximatif Semaine Mati`ere
9/01 Historique
16/01 Syntaxe des langages de programmation 23/01 Programmation fonctionnelle (Scheme) 30/01 Traitement de liste, fonctions d’ordre sup´erieur
6/02 Proc´edures, macros, variables et environnements 13/02 Interpr´etation
20/02 Programmation logique (Scheme/Prolog) 27/02 (P´eriode d’activit´es libres)
6/03 EXAMEN INTRA le 6/03 au Z-317 13/03 Unification, retour-arri`ere
20/03 Programmation imp´erative (C) 27/03 Compilation
3/04 Types, repr´esentation de donn´ee 10/04 Pointeurs, gestion m´emoire
EXAMEN FINAL le 24/04 au PAA-1355
Evaluation´
Mode d’´evaluation Epreuve´ Valeur
Examen Intra 35
Final 35
Travaux pratiques TP1 (progr. fonctionnelle) 10 TP2 (progr. logique) 10 TP3 (progr. imp´erative) 10 La note finale est calcul´ee selon la formule suivante :
Si I ntra+F inal≥35 alors
N ote=I ntra+F inal+T P1 +T P2 +T P3 Sinon
N ote=I ntra+F inal+ 0.5∗(T P1 +T P2 +T P3)
La cons´equence ´evidente de ce calcul est qu’il faut r´eussir les examens pour r´eussir le cours. La note sur 100 est convertie en note litt´erale (A+, A, A-, etc.) `a la fin du cours seulement, selon un barˆeme qui d´ependra `a la fois de la moyenne du groupe et de la r´epartition des notes des ´etudiant(e)s.
Le plagiat
Le plagiat et le copiage sont des fautes graves passibles de sanctions disciplinaires.
(voirhttp://www.secgen.umontreal.ca/pdf/reglem/francais/sec_30/ens30_3.pdf).
Dans ce cours, nous prendrons toutes les mesures que nous jugeons n´ecessaires pour d´epister et contrer ce genre d’activit´es.