Computer Science 472
January 2018

Title:   Compiler Design
Instructor:   Cezar Câmpeanu
Email:   ccampeanu < at > upei < dot > ca
Office:   CASS 405
Tel:   (902)566-0485
Textbook:   Compilers: Principles, Techniques, and Tools
by Alfred V. Aho, Monica S. Lam, Ravi Sethi, Jeffrey D. Ullman,
Addison-Wesley, 2007,
ISBN-10: 0-321-54798-5
ISBN-13: 978 0-321-54798-9
Course web site:  

Go To:, or,
Then follow the links: Faculty and Staff, Cezar Campeanu, Personal webpage, Teaching, and CS472 under Winter 2018.

General description:   This is a first course in compiler design. The course covers: compilation phases, lexical analysis, parsing, scope rules, block structure, symbol tables, run-time heap and stack management, code generation, preprocessing, compiler-compilers, and translation systems.
Time and Location:   Monday Wednesday Friday 10:30am-11:20am, CSH 104
Office Hours:   Monday 12:30-2:20, or anytime by appointment (please send email)
Midterm:   Wednesday, February 28, during class
Final Exam:  
Monday, April 16, 5:00pm, Cass Science Hall (CSH) 101
ACADEMIC HONESTY:   This course is committed to the principle of academic integrity. Submitted work is expected to reflect an individual effort. Copying or cheating on assignments or tests will be dealt with harshly. Students should read Academic Regulation 20 in the UPEI Calendar at page 61 (
Avoiding Plagiarism:   The following link will help you identify and. avoid plagiarism
Individual Work Expectations:   You are expected to write your own code, your own proofs, your own examples, and so on. Unless explicitly specified in the assignment's text, the submitted work should be all yours.
Grading scheme:
Assignments Midterm Examination (February) Project (Class Presentation) Final Examination
30% 20% 15% 35%
Course Resources:
  1. Assignments
  2. Handouts
  3. Assignment Policy
  4. Moodle login
  5. Project
  6. Tentative Schedule
Other Resources:
  1. lex
  2. flex
  3. yacc
  4. bison
Important Notices: Please, check course web site periodically for updates. For any problems concerning the CS472 pages, please contact me.
To make sure you are viewing the most recent version of this page,press the shift key while clicking on the Reload button.
It is your responsibility to check this page for updates.

Last modified:Wednesday February 14, 2018 at 10:12 pm AST
Cezar Câmpeanu