logo.jpg (32659 bytes)

CAS 758 Course Outline


Link to CAS 758 homepage (www.cas.mcmaster.ca/~franek/courses/cas758)

The instructor and the university reserve the right to modify elements of the course during the term. The university may change the dates and deadlines for any or all courses in extreme circumstances. If either type of modification becomes necessary, reasonable notice and communication with the students will be given with explanation and the opportunity to comment on changes. It is the responsibility of each student to check his/her McMaster email, the Avenue notices, and the course web site daily during the term and to note any changes.


F. Franek, ITB-126
email_course.jpg (3589 bytes)
extension: 23233

office hours are variable, so please, first check Prof. Franek's web site where the current office hours
are posted:  http://www.cas.mcmaster.ca/~franek

Course Assistance

        Except the two instructors, there is no course assistance by Teaching or Research assistants.

Student Course Evaluation

        The student course evaluation is conducted on-line in the period TBA.



Day Time Location Comments



14:30-17:20 virtual classroom
  • First class: Sep. 15, 2021
  • Last class - presentations : Dec. 8, 2021
  • if need be, an additional class on Dec. 15 for presentations
  • No classes :
    • Sep 8, 2021
    • Sep 13, 2021 (midterm recess)
Participation in the Tuesday AdvOL Optimization Seminars (once a month) is mandatory for the students registered at this course as these seminars are an integral part of this course. (Due to covid 19 restrictions and remote nature of the course, the seminars are no longer conducted on a regular basis and hence not a part of this course.)
Classes will be virtual during the time slots for the course, conducted using Microsoft Teams software. The project presentations will also be virtual during the time slots for the course. The students will be required to download (free) Microsoft Teams app and have an internet access.

Calendar Description

Advanced compiler design methodologies with emphasis on control and data flow analyses, code optimization and related issues.
Three hours a week,  first term.
Registration in any graduate programme at the Department of Computing and Software and a permission from the instructor.

Course Objectives

The objective is to allow students to acquire the design fundamentals of compiler construction with emphasis on advanced optimization techniques.

Outline of Topics

Student Assessment (Grading)

Evaluation is based on a research topic presentation and a write-up concerning the topic, see below.


50 %


50 %


The draft of F. Franek and M. Liut's book Designing a Modern Compiler in Python, will be downloadable from the course web site

About this course

Each student in the class will select one topic from the textbook and will conduct further study of the topic. The result of the study will be a 40 minute presentation in the class at the end of the term. In addition, each student will submit a write-up describing the research. The draft of the textbook will be made available to the students at the beginning of the term.

Instructor Specific Information

Most of the communication and the course management is provided via the course web site It is the responsibility of each student to check the web site regularly and keep informed about the course and possible changes. Some of the course web site features are only accessible to students with a valid course password. A valid password is created by the student registered in the course via the course web site
For all email communication with the instructor the students must use their official McMaster email account, emails from other accounts will be ignored.
The office hours of the instructor are posted at http://www.cas.mcmaster.ca/~franek/
The office hours will be conducted as Teams chat. If arranged by email prior to the office hour, Skype, or Zoom, or WhatsApp chat may also be possible.


Students with disabilities can receive accommodations to assist them in the completion of lab and home projects. Please contact the Student Accessibility Services (SAS) at https://sas.mcmaster.ca/ for advice and for arranging assistance. Since most of the course is conducted via internet, their are very few issues concerning accessibility. Students are encouraged to discuss with the instructor about all these issues.


The Faculty of Engineering is concerned with ensuring an environment that is free of all adverse discrimination. If there is a problem that cannot be resolved by discussion among the persons concerned individuals are reminded that they should contact the Department Chair, the Sexual Harassment Officer or the Human Rights Consultant, as soon as possible.

Academic Dishonesty

Academic dishonesty consists of misrepresentation by deception or by other fraudulent means and can result in serious consequences, e.g. the grade of zero on an assignment, loss of credit with a notation on the transcript (notation reads: "Grade of F assigned for academic dishonesty"), and/or suspension or expulsion from the university. It is the student's responsibility to understand what constitutes academic dishonesty.

For information on the various kinds of a academic dishonesty please refer to the Academic Integrity Policy located at https://secretariat.mcmaster.ca/university-policies-procedures-guidelines/quick-link-students/

Last revision: Jun 26, 2021