CSC 4181 | Compiler Construction | Spring 2017 |
Sections 001 & 002 |
SCHEDULE |
Dr. Thomas Way |
Schedule is subject to change during the semester. Please check
the online version on the course website from time to time. |
# |
Date |
Topics, Assignments,
Activities |
---|---|---|
1 |
T 1/17 |
Welcome, Course Overview Accumulator machine example (pdf) |
Th 1/19 | Overview of Compilers, Part 1 (pdf) | |
2 | T 1/24 |
Overview of Compilers, Part 2 (pdf) CS Help Desk Information (link) Lab 1: Using the framework provided in this checker web page, develop two validation parsers that validate mathematical expressions, as specified in this handout. Feel free to use online resources, including those listed on the class Resources page. Check with me if you would like to use a different programming language to create a validator. Due in-class: 2/02/17 Modified version of checker from class 1/24/17 (checker_v2.html) |
Th 1/26 | Overview of Compilers, Review Lab working time Modified version of checker from class 1/26/17 (checker_v3.html) |
|
3 | T 1/31 | Lexical Analysis (pdf) Lab working time Modified version of checker from class 1/31/17 (checker_v4.html), shows how to use regular expression matching in "if" statement. |
Th 2/02 |
Lexical Analysis (cont'd) Read for next class: Introduction to Compiler Design, Part 1, Lexical Analysis Lab working
time |
|
4 | T 2/07 | Lexical Analysis (cont'd) Parse trees, syntax trees, syntax errors, semantic errors (pdf) Homework 1 - Parse Trees and Syntax Trees - due Tue. Feb. 14, 2017 Context Free Grammars (pdf) |
Th 2/09 | Context Free Grammars (cont'd) CLASS CANCELED due to SNOW |
|
5 | T 2/14 |
Context Free Grammars (cont'd) Lab 2 -
Scanner Generation (assignment) Homework 2 - Parse Trees and Syntax Trees - due Tue. Feb. 21, 2017 Homework 1 due today |
Th 2/16 | Context Free Grammars (cont'd) Lab 2 working time |
|
6 | T 2/21 | Parsing (pdf) Lab 2 working time Homework 2 due today |
Th 2/23 |
Parsing (pdf) Lab 2 due today, demo & eval during class meeting |
|
7 | T 2/28 | |
Th 3/02 |
Software Engineering (cont'd) (slides 21-28) Agile Manifesto (handout) Lab 3 -
Parser Generation (assignment) -
due Thur. March 23, 2017 |
|
T
3/06 Th 3/08 |
Semester Break - no class meetings |
|
8 |
T 3/14 |
Parsing (cont'd) CANCELED DUE TO SNOW Lab 3 working time |
Th 3/16 | Parsing (pdf)(ppt) (cont'd) Lab 3 working time |
|
9 | T 3/21 |
Parsing (cont'd) Lab 3 working time |
Th 3/23 |
Parsing (cont'd) Homework 3 - Grammars and Parse Tables - due Tue. March 30, 2017 Lab 3 due not due today... postponed to 3/28 |
|
10 | T 3/28 | Software Engineering (pdf)
(slides 29-41) NEW! Lab 3 due today, demonstrate during class meeting |
Th 3/30 |
Semantic Analysis (pdf) (slides
1-22) Homework 3 due today (March 30, 2017) Lab 4 - Building a Complete Compiler (assignment) Lab 4 working time |
|
11 | T 4/04 |
Semantic Analysis (cont'd) (slides 23-47) Lab 4 working time |
Th 4/06 | Software Engineering (pdf)
(slides 42-62) Lab 4 working time |
|
12 | T 4/11 | Software Engineering (selected topics)
SCRUM
in under 10 minutes (8:00) [produced by
Axosoft] Handout: Agile Software Development Assignment: Watch any of the above videos that we did not watch during our class meeting. Try to incorporate topics of Agile, SCRUM and from the Agile Software Development handout from earlier this semester into your Lab 4 work. Lab 4 Scanner and Parser Evaluation |
Th 4/13 | Easter Break - no class meeting | |
13 | T 4/18 |
Scope & Symbol Table (pdf) Lab 4 working time,
how to incorporate symbol table |
Th 4/20 | Lab 4 working time | |
14 | T 4/25 | Code Generation & Optimization (pdf) Software Engineering (pdf) (slides 63-81) Lab 4 working time
|
Th 4/27 | Lab 4 working time Lab 4
Symbol Table Evaluation (cont'd) |
|
15 | T 5/02 | "Friday" - our class does not meet |
Th 5/04 | Lab 4 Code Generation Evaluation
(cont'd) Alternative: Lab 4
Code Generation e-Evaluation via email possible (deadline 5/08/17) - eCATS (Student
Proctor Guide)
|
|
F 5/05 | READING DAY | |
16 |
S 5/06 M 5/08 |
Sat. May 6, 2017, 1:30pm - 4:00pm Mon. May 8, 2017, 8:30 am - 11:00 am |
Last updated: 04/21/2017