0% found this document useful (0 votes)
226 views

Compilers CSI-CST8152-Winter2022

This document provides updated course information for CST8152 - Compilers at Algonquin College in the Fall 2021 term. Due to COVID-19, the course may be delivered remotely. Students should check this document for any changes not reflected in the original course outline. It outlines the required resources, evaluation breakdown, and weekly learning schedule. Students should contact the listed professors if they have any additional questions.

Uploaded by

Veda Varnekar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
226 views

Compilers CSI-CST8152-Winter2022

This document provides updated course information for CST8152 - Compilers at Algonquin College in the Fall 2021 term. Due to COVID-19, the course may be delivered remotely. Students should check this document for any changes not reflected in the original course outline. It outlines the required resources, evaluation breakdown, and weekly learning schedule. Students should contact the listed professors if they have any additional questions.

Uploaded by

Veda Varnekar
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 8

Due to COVID-19, this course may be offered via remote delivery in 2021-22 (unless

the course is already being delivered fully online). Your course may have changes that
are not reflected in the Course Outline. Please refer to this Course Section Information
document for updated information about your course. If you have questions, please
contact your professor.

SCHOOL OF ADVANCED TECHNOLOGY


ICT - Applications & Programming
Computer Engineering Technology – Computing Science

COURSE SECTION INFORMATION (CSI)


Term: Fall 2021
Course: CST8152 - Compilers
Section: 010
Program: Computer Eng. Technology - Comp. Science

Professor’s Name: Paulo Sousa / George Kriger


Email/Contact Info: [email protected] / [email protected]

Learning Resources

Required Resources
❖ Lecture Notes are provided by professor as well as slides used in the
presentations.
❖ The textbooks for this course are the same as those listed in the approved Course
Outline available on Brightspace:
▪ Main book:
 Compilers – Principles, Techniques & Tools, 2nd ed., by Alfred V. Aho,
Monica S. Lam, Ravi Sethi, Jeffrey D. Ullman, Published by Pearson
(Addison Wesley), ISBN-10: 0321486811, ISBN-13: 9780321486813
Algonquin College – Compilers CST8152 – CSI– Winter, 2022

▪ Additional Reference:
 The C (ANSI C) Programming Language, 2nd ed., by Brian W. Kernighan,
Dennis M. Ritchie, Published by Prentice Hall, ISBN 0-13-110362

Development Tool
▪ IDE Suggested (used by professors):
 Microsoft Visual Studio 2022 – Community Edition [MSVS22CE] (64-bit -
Version 17 or later): Download:
https://visualstudio.microsoft.com/downloads/

Tip 1: About IDE


Students are free to use any IDE (and several have already been used before – ex: VS Code
(https://code.visualstudio.com/), Code Blocks (https://www.codeblocks.org/), etc. However, be advised that
professors will use MSVS22CE to check your submission.

Additional Reference/Supporting Resources (specific to this course section)


 Git / Github access for control version system (especially working in pairs):
Download: https://git-scm.com/downloads
 Office Tools: Microsoft Word / PowerPoint please check the resources in
Office 365 using your AC Credentials (or any other .DOC / .DOCX editor);
➢ Free alternatives such as LibreOffice (https://www.libreoffice.org/) can
be adopted without problems.
 Plan Editor / standard editor (suggested: Notepad++ - https://notepad-plus-
plus.org/).
• Additional (recommended) resources for Lectures:
• JFLAP (Java Formal Language Application): Available on http://www.jflap.org/
• RE Tools (provided in Brightspace) or online RE tools (see
https://regex101.com/ or https://regexr.com/)

Evaluation Breakdown

❖ Assessments (by name and number) corresponding to assessment categories in


the Course Outline’s Predefined Evaluation/Earning Credit section
❖ Percentage weight of each assessment adding up to 100%.

Pag. 2
Algonquin College – Compilers CST8152 – CSI– Winter, 2022

Assessment Mark CLRs


Assignment 1.1 – Compiler specification (week 2) 5% 1,2,3,4,5
Assignment 1.2 – Buffer modification (week 4) 5% 1,2,3,4,5
Assignment 2.1 – Language models (week 6) 10% 1,2,3,4,5
Assignment 2.2 – Scanner implementation (week 10) 15% 1,2,3,4,5
Assignment 3.1 – Grammar definition (week 12) 5% 1,2,3,4,5
Assignment 3.2 – Parser implementation (week 13) 10% 1,2,3,4,5
Practical Component 50% 1,2,3,4,5
Midterm exam (week 7) 20% 1,2,3,4
Final Exam (week 15) 30% 1,2,3,4
Theoretical Component 50% 1,2,3,4,5
Total Marks 100% 1,2,3,4,5

❖ NOTES:
➢ The marks are different from previous terms: this time, the practical and theoretical
performs half marks of the final grade and it is required to get at least 50% of each
component to pass
➢ Extra bonus can be given under the criteria defined by professors (both lectures and
labs). So, participation and practice are highly recommended!

Learning Schedule (subject to change with notification)

Weekly Theme and Assessments


Date Learning Activities Resources CLRs
Learning Outcomes (%)
• Course Overview Topic specific
• Introduction to Remote lectures resources are
Compiling: process included in the
and Interpreters Remote Lab: course materials
• Building a project. C Preparing A11:
Week 1 • Major data structures available on
data types. Exercise and 1, 2
Jan 10-16 in a compiler. Brightspace
config. Free tests
• Compiler run-time Assignment 1:
environment. • Configuring Text Chapter 1:
• Programs related to environment Introduction,
compilers. sections 1.1-1.2
Topic specific
The phases and the resources are
components of a included in the
compiler
Remote lectures Demo A11 – course materials
Week 2 Compiler available on
• Compiler generators. Remote Lab: 1,2,3
Jan 17-23 specification Brightspace
• Planning and
developing a compiler. • A11 Demo (5%)
Text Chapter 1:
• Basic about automata. Introduction,
sections 1.2-1.6

Pag. 3
Algonquin College – Compilers CST8152 – CSI– Winter, 2022

Weekly Theme and Assessments


Date Learning Activities Resources CLRs
Learning Outcomes (%)
Language Definition. Topic specific
resources are
• Informal and formal
included in the
language
course materials
specifications.
Remote lectures available on
Grammars.
Brightspace
• Context-free Remote Lab:
grammars. BNF Preparing A12:
Week 3 • Bit-wise operations. Text Chapter 2:
(Backus-Naur Form) Bit-wise 1,2,3
Jan 24-30 • Advanced data types Simple Syntax-
grammars. operations
in C. Directed
• Lexical and syntax
• C memory Translator,
grammars. Problems
management. sections 2.1, 2.2.
with grammars.
• Writing a grammar for Text Chapter 4:
a simple programming Syntax-Analysis,
language. sections 4.2.1
Topic specific
resources are
Lexical Analysis
Remote lectures included in the
(Scanning)
Demo A12 – course materials
Week 4 • The scanning process
Remote Lab: Buffer available on 1,2,3,
Jan 31- - recognition of
modification Brightspace 4,5
Feb 6 symbols and words • Working on (5%)
(tokens). Assignment 1 Text Chapter 3:
• Regular expressions. Syntax Analysis,
sections 3.1 - 3.2
Topic specific
resources are
Remote lectures included in the
Lexical Analysis
course materials
• Regular expressions Remote Lab:
Week 5 Preparing A21: available on 1,2,3,
and grammars. Assignment 2:
Feb 7-13 Models definition Brightspace 4,5
• State transition
diagrams.
• Building a Scanner,
20% of term mark. Text Chapter 3:
Syntax Analysis,
section 3.3
Remote lectures Topic specific
resources are
Remote Lab: included in the
• Advanced data types course materials
Lexical Analysis Demo A21 –
Week 6 in C available on 1,2,3,
Feb 14-20 • Finite automata - DFA • Pointers to functions.
Language
Brightspace 4,5
and NFA. Models (10%)
Arrays of pointers to
functions. Text Chapter 3:
• Working on Syntax Analysis,
Assignment 21. sec 3.4 - 3.9
Preparing A22:
Topic specific
Token recognition
Lexical Analysis Remote lectures resources are
and acceptance
included in the
Week 7 • From regular Remote Lab:
functions
course materials
1,2,3,
Feb 21-27 expressions to NFAs 4,5
• Preparation for available on
and DFA. Midterm Exam
Midterm Test.1 Brightspace
(20% of term
mark)

Pag. 4
Algonquin College – Compilers CST8152 – CSI– Winter, 2022

Weekly Theme and Assessments


Date Learning Activities Resources CLRs
Learning Outcomes (%)
Text Chapter 3:
Syntax Analysis,
sec 3.4 - 3.9
Week 8 Term Term Term Term -
Feb 28- Break Break Break Break
Mar 6
Topic specific
Lectures resources are
included in the
Lexical Analysis
Remote Lab: Demo A22 – course materials
• Implementing a
Week 9 • Working on Scanner available on 1,2,3,
scanner.
Mar 7-13 Assignment 2. implement. Brightspace 4,5
• Review of course
• Generating a (15%)
material
scanner using Flex Text Chapter 3:
scanner generator. Syntax Analysis,
sec 3.4 - 3.9
Topic specific
Semantics and Run- resources are
time Environment included in the
• A language variable course materials
Lectures
attribute. Preparing A31: available on
Week 10 • Symbol and literal Checking Brightspace 1,2,3,
Remote Lab:
Mar 14-20 tables. grammar 4,5
• Working on
• A symbol table Assignment 2.
redefinition Text Chapter 2:
interface. Basic Simple Syntax-
implementation Directed
techniques. Translator, section
2.4,2.7
Topic specific
resources are
Lectures included in the
Syntax Analysis course materials
(Parsing) Remote Lab: Demo A31 – available on
Week 11 1,2,3,
• Overview of the Assignment 3: Grammar Brightspace
Mar 21-27 4,5
parsing process. • Building a Parser, definition (5%)
• Top-down parsing. 15% of term mark, Text Chapter 7:
due in 4 weeks Run-Time
Environment -
sections 7.1, 7.4
Lectures Topic specific
resources are
• Preparation for
Syntax Analysis included in the
Midterm Test.1
(Parsing) Preparing A32: course materials
Week 12
• Recursive-Descent Checking available on 1,2,3,
Mar 28- Remote Lab:
Predictive parsers. grammar Brightspace 4,5
Apr 03 • Transforming
• Building First and implementation
grammar
Follow sets. Text Chapter 4:
• Working on Syntax Analysis,
Assignment 3. sections 4.1-4.5
Lectures
Demo A32 – Topic specific
Syntax Analysis
Week 13 Parser resources are 1,2,3,
• Non-recursive Remote Lab:
Apr 04-10 implement. included in the 4,5
predictive parsers. • Working on (10%) course materials
Assignment 3
Pag. 5
Algonquin College – Compilers CST8152 – CSI– Winter, 2022

Weekly Theme and Assessments


Date Learning Activities Resources CLRs
Learning Outcomes (%)
• Resolving the available on
“Dangling Else” Brightspace
ambiguity.
• Error handling and Text Chapter 4:
error recovery in Syntax Analysis,
parsers. sections 4.4,4.8
Topic specific
resources are
Syntax Analysis
included in the
• Bottom-up parsing. LR
course materials
parsers.
Week 14 Preparing Final available on 1,2,3,
• Parser generators Lectures
Apr 11-17 Exam Brightspace 4,5
Review of course
Text Chapter 4:
material
Syntax Analysis,
sections 4.4,4.8
Week 15 Final Exam 1,2,3,
Final Exam Final Exam All of the above
Apr 18-24 (30%) 4,5

General Schedule

Activity W01 W02 W03 W04 W05 W06 W07 W08 W09 W10 W11 W12 W13 W14 W15 Total
Assignments 5 5 10 - 15 5 10 50
Lab demos X X X - X X X -
Practical 50
Mid-term 20 - 20
Final exam - 30 30
Theoretical 50
Total 100

Other Important Information

❖ GENERAL INFO:
❖ Please consult the Course Outline for important information about attendance and
classroom policies specific to the course.
❖ Please consult the Evaluation/Earning Credit section of the Course Outline for the
list of Course Learning Requirements validated by assignments and tests.
❖ Please consult the Assignment Submission Standard and Assignment Marking
Guide on Brightspace.

❖ ASSIGNMENTS SUBMISSIONS:
❖ Submissions has always a due date on Saturday’s midnight.

Pag. 6
Algonquin College – Compilers CST8152 – CSI– Winter, 2022

❖ Late assignments may be submitted for credit with a deduction depending on how
late the work is submitted:
• Up to 1 week after the due date, 50% penalty.
• After this, no marks will be considered.
❖ As you should know, demos are required to get full marks.
• Submission without demos will imply in deductions (20%).
❖ All submissions can be done individually or in teams (2 students).
➢ The team must be identified and previously informed to Lab professor (at least
2 weeks before the due date).
➢ Students must belong to the same Lab session.
➢ TIP: The team development is highly recommended due to the peer
discussion.

❖ REQUIRED PRACTICES:
❖ About communications:
➢ Communications must be done using your Algonquin email (external emails
may not be considered).
➢ In communications, please include your Student Number and your Session
(to make it easier to identify you).
❖ About exams:
➢ The cameras are mandatory for exams (including mid-term and final exam).
➢ Please check the dates and, in case of conflicts / problems, advice at least with
2 weeks of anticipation.
➢ During your exams, you need also to show your credentials (ex: student ID)
when required.
❖ About zoom sessions:
➢ Because we are remote, Zoom is the official tool to be used during sessions.
➢ Your name when entering in Zoom sessions should match with your real name
(especially if you are using mobile devices).
 It is the way your professors can recognize you and, eventually, use for
attendance purposes.
➢ During zoom sessions, eventual recordings will be done.
 Note that, following suggestions from college, they will not be available for
downloads, unless any special / valid reason to be evaluated by professors
can be considered (and even under these circumstances, without permission
for sharing).

Pag. 7
Algonquin College – Compilers CST8152 – CSI– Winter, 2022

 The basic idea is to promote the participation of students in remote sessions


(preparing for upcoming face-to-face classes).
➢ About marks / grades:
 Marks are supposed to be released in the Brightspace about 2 weeks after
the submissions and exams.
 Problems with marks should be reported as soon as possible (up to 2 weeks
after the release of marks).
➢ After this period, unless for exceptional reasons, it will not be possible to
change.

Final Note: Considering the dynamic of the semester, eventual changes in CSI can
exceptionally happen, but announcements will be done to formalize it.

Winter 2022 – Algonquin College Athletics and Recreation Centre

Finally, enjoy Compilers and success in this course!


Your Compiler Professors, Winter 2022

Pag. 8

You might also like