COMP442/6421 - winter 2022

From Dr. Joey Paquet Web Site
Revision as of 12:15, 23 January 2022 by Paquet (Talk | contribs)

Jump to: navigation, search

Contents

Course Description

COMP 442/6421 - Compiler Design (4 credits)

Prerequisites (COMP442): COMP 228 or SOEN 228 or COEN 311; COMP 335; COMP 352 or COEN 352
Prerequisites (COMP6421): COMP 5201, 5361, 5511.

Compiler organization and implementation. Programming language constructs, their syntax and semantics. Syntax directed translation, code optimization. Run-time organization of programming languages. Project. Lectures: three hours per week. Laboratory: two hours per week.

Course Schedule and Contacts

component day time location instructor email
lecture NN M------ 17:45-20:15 H-507
[YouTube]
[zoom]
Paquet, Joey joey.paquet@concordia.ca
office hours --W---- 10:00-12:00 [zoom] Paquet, Joey
lab NN NI M------ 20:30-22:20 [zoom] Jafarpour, Hamed jafarpour.ha@gmail.com
lab NN NJ M------ 15:45-17:35 [zoom] Marhwal, Vashisht vmarhwal97@gmail.com
lab NN NK M------ 20:30-22:20 [zoom] Jafarpour, Hamed jafarpour.ha@gmail.com
marker Jafarpour, Hamed jafarpour.ha@gmail.com
marker Marhwal, Vashisht vmarhwal97@gmail.com

Lecture Schedule

wk wk lecture date event lectures topics/material lab material
(for videos - see moodle)
week 1 jan 10
  • no lab
week 2 jan 17
week 3 Jan 24
week 4 jan 31
  • project assignment 1 due (jan 30)
  • [ schedule ] [ [grading sheet ] project assignment 1 demonstrations (feb 1-2)
  • [ handout ] [ video ] project assignment #2 (syntactic analyzer)
  • Programmer on duty
week 5 feb 7
  • [ slides ] [ video ] grammar transformation and parsing
week 6 feb 14
week 7 feb 21
  • project assignment 2 due (feb 20)
  • [ schedule ] [ grading sheet ] project assignment 2 demonstrations (feb 22,23)
  • [ handout ] [ video ] project assignment #3 (AST generation) (handout)
  • LL(1) grammar
  • [ slides ] [ video ] Tree traversal and symbol table generation
  • Programmer on duty
midterm break feb 28 - mar 6
week 8 mar 7
  • project assignment 3 due (mar 6)
  • [ schedule ] [ grading sheet ] project assignment 3 demonstrations (mar 8-9)
  • [ handout ] [ video ] project assignment #4 (semantic analysis) (handout)
  • [ slides ] [ video ] bottom-up parsing I
  • [ slides ] AST generation: supplementary lecture
week 9 mar 14
  • Programmer on duty
week 10 mar 21
  • project assignment 4 due (mar 20)
  • [ schedule ] [ grading sheet ] project assignment 4 demonstrations (mar 22-23)
  • [ handout ] [ video ] project assignment #5 (code generation) (handout)
week 11 mar 28
week 12 apr 4
  • project assignment 5 due (apr 3)
  • [ schedule ] project assignment 5 demonstrations (apr 5-6)
  • [ slides ] [ video ] review and discussion on final examination
week 13 apr 11
  • final project due (apr 10)
  • [ schedule ] [ grading sheet ] final project demonstrations (apr 11-13)
  • no lab
examination week apr 19 - may 1

Course Material and Resources