CSI3525 Concepts des Languages de Programmation


OBJECTIFS DU COURS: Ce cours a trois objectifs. Tout d'abord, l'etude de concepts de base communs a tous les languages de programmation tels que les criteres d'evaluation de ces languages, leurs modes d'implementation, et leurs methodes de description syntaxique et semantique. Ensuite, l'etude des different paradigmes de programmation dont la programmation imperative, la programmation orientee objet, la programmation logique et la programmation fonctionnelle. Finalement l'etude de certain languages qui examplifient ces paradigmes.
PROFESSEUR: Nathalie Japkowicz
Bureau: MCD 325-C
Telephone: 562-5800 ext. 6693
Courriel: nat@site.uottawa.ca
Consultation: Jeudi 14h00-16h00 ou par rendez-vous
PREALABLES: 1. CSI 2514
2. Deux laboratoires de languages de programmation choisis parmi CSI 2565 et (CSI 2571 ou CSI 2572 ou CSI 2573)
3. CSI 2574
Note: Ce cours ne peut etre combine avec CSI 2515 pour l'obtention de credits
MANUEL DE COURS: Titre: Concepts of Programming Languages,
Fourth edition, 1999
Auteur: Robert W. Sebesta
Edition: Addison Wesley
COURS: Lundi 14h30-15h50, Colonel By Hall: B202;
Jeudi 16h00-17h20, Colonel By Hall: B202;
GROUPE DE DISCUSSION: Lundi 16h00-18h00, Vanier Hall: 469;
EVALUATION: Projets ............................................... 40%
Examen Intra-Session ........................ 20%
Examen Final ................................... 40%

L'Ecole d'Ingenierie et de Technologie de l'Information exige l'obtention d'une note d'un minimum de 50% aux examens. La note numerique sera calculee comme ceci:
Si (Intra-Session + Final) < 30
Alors Note-Numerique = (Intra-Session + Final) * 1.6
Sinon Note-Numerique = Intra-Session + Final + Projets

La note alphabetique finale sera calculee en fonction de l'echelle en vigueur a l'Universite d'Ottawa (90% ou plus = A+; moins de 55% = D ou moins = Echec).
RETARD DANS LA REMISE DES TRAVAUX: Un retard dans la remise des travaux conduit a une penalite de 5% par jour ouvrable et de 2.5% par jour de fin de semaine ou jour ferie.
DISTRIBUTION DES NOTES DE COURS ET DES DEVOIRS: Les notes de cours et les devoirs (en Francais) seront accessible electroniquement en suivant les liens a partir du plan de cours ci-dessous. Les notes de cours de la version Anglaise peuvent-etre obtenus ici




Plan du Cours:


Semaine/Devoirs

Sujet du Cours

Chapitres et Autres Lectures

Semaine 1: 5 Sept- 8 Sept

Preliminaires, Motivation et Historique
Vue des Diapos
Fichier Powerpoint

Chap. 1 (Sections 1.1 and 1.2) & Chap 2

Semaine 2: 11 Sept-15 Sept

Preliminaires, Motivation et Historique (Continuation)

Criteres d'Evaluation des Languages
Vue des Diapos
Fichier Powerpoint

Conception et Implementation des Languages
Vue des Diapos
Fichier Powerpoint

Chap. 1 (Sections 1.3-1.8)

Semaine 3: 18 Sept- 22 Sept

Methodes de description syntaxique
Vue des Diapos
Fichier Powerpoint

Chap. 3 (Sections 3.1-3.4)

Semaine 4: 25 Sept- 29 Sept

Devoir # 1 (Par Ecrit): Vue du Devoir (en fichier Word)
Sujet: L'evolution des langages de programmation; La description syntaxique et semantique
Distribue: Jeudi, Semaine 4
A rendre: Jeudi, Semaine 5

Methodes de description Semantique
Vue des Diapos
Fichier Powerpoint

Chap. 3 (Sections 3.5-3.6)

Semaine 5: 2 Oct- 6 Oct

Devoir # 1: A rendre Jeudi

Devoir # 2 (Programmation): Vue du Devoir (en fichier Word)
Sujet: Scheme et ML
Distribue: Jeudi, Semaine 5
A rendre: Jeudi, Semaine 8

Langages Fonctionnels (Semaine I)

Introduction au Scheme
Vue des Diapos
Fichier Powerpoint
Notes de la Section Anglaise

Chap. 14 (Sections 14.1-14.6)

Semaine 6: 9 Oct-13 Oct

Lundi 9 Octobre: Conge de l'Action de Grace

Langages Fonctionnels (Semaine II)

Jeudi 12 Octobre: Introduction au ML
Fichier Powerpoint
Notes de la Section Anglaise

Chap. 14 (Section 14.7) + Polycopie

Semaine 7: 16 Oct - 20 Oct

Langages Fonctionnels (Semaine III)

Lundi 16 Octobre: Introduction au ML (Continuee)

Jeudi 19 Octobre: Revisions pour l'examen intra-session.

Chap 11 (Sections 11.4-11.8)

Semaine 8: 23 Oct - 27 Oct
Devoir # 2: A rendre Jeudi

EXAMEN INTRA-SESSION: Lundi 23 Octobre

Considerations Generales et Languages Imperatifs (Semaine I)

Variables, Attachement, Verification du Type, et Etendue
Fichier Powerpoint

Chap 4

Semaine 9: 30 Oct - 3 Nov

Devoir # 3 (Ecrit et Programmation): Vue du Devoir
Distribue: Lundi, Semaine 10
A rendre: Jeudi, Semaine 11

Considerations Generales et Languages Imperatifs (Semaine II)

Type de Donnees
Fichier Powerpoint

Chap. 5

Semaine 10: 6 Nov - 10 Nov

Considerations Generales et Languages Imperatifs (Semaine III)

Expressions, Allocation
Fichier Powerpoint

Chap. 6

Semaine 11: 13 Nov - 17 Nov

Devoir # 3: A rendre Lundi

Devoir # 4 (Programmation): Vue du Devoir (en Fichier Word)
Distribue: Jeudi, Semaine 11
A rendre: Jeudi, Semaine 13

Considerations Generales et Languages Imperatifs (Semaine IV)

Structures de Controle
Fichier Powerpoint

Sous-Programmes
Fichier Powerpoint

Chap. 7

Semaine 12: 20 Nov - 24 Nov

Considerations Generales et Languages Imperatifs (Semaine V)

Implementation des Sous-Programmes
Fichier Powerpoint

Types Abstraits de Donnees

Chap. 8

Semaine 13: 27 Nov - 1 Dec

Devoir # 4: A rendre Jeudi

Introduction au SmallTalk

Fichier Powerpoint
Extra Examples: Fichier Word

Chap. 9 (Sections 9.3-9.4)

Chap 10 (quelques fragments)

Semaine 14: 4 Dec - 8 Dec

Lundi 4 Decembre:
Revisions

EXAMEN FINAL: La date sera annoncee ulterieurement

Toutes les sections du livre couvertes en cours et tous les polycopies