CS 6353 Compiler Construction
News:
-
Project handout has been updated.
I greatly simplified the function call handling.
Please take a look at Section 7 for instructions highlighted in green.
The updated version also removed the indirect goto statement
(due to the assumption, indirect goto is no longer needed).
-
There will be no class on Tuesday Oct 25.
We will have a make up class on Satuday Oct 22 at 10:30am
in our regular classrom.
-
Homework #2, Question #5:
The grammar is SLR. Please just derive the SLR automata, not the LR automata.
This problem is designed to show you how to work for the project assignment #3.
Objectives
This course is designed to teach students in both theory and practice
in compiler construction.
Lectures will introduce the theoretical background and important
techniques in compiler design.
Projects are designed to offer students hands-on experiences
for language processing.
Textbook
- Required reading:
Compilers: Principles, Techniques, and Tools (2nd edition),
by Aho, Lam, Sethi, and Ullman, Addison Wesley, 2007.
- Optional Reading for programming assignments:
Lex & Yacc,
by Doug Brown, John Levine, and Tony Mason, O'Reilly Media, 1995.
Notes
- Introduction
- Scanner, updated 8/31, 8:00am
- Grammar
- Top Down Parsing, updated 9/15, 1:00pm
- Bottom Up Parsing, updated 10/13, 8:00am
- Attrubute Grammar,
updated 10/20, 11:00am
- Semantic Analysis
updated 11/6, 11:00am
- Code Optimization - Preliminary
-
Code Optimization - Data Flow Analysis
updated 11/22, 1:00am
- Code Generation
- Run Time Environment
Projects
- Project Assignment Handout.
Updated on Nov 17, added more instructions for Project Yacc.
Updated on Nov 22, added example input/output for the compiler.
- Project DFA, Due Sep 15.
- Project Lex, Due Oct 2.
- Project PT, Due Oct 30.
- Project Yacc, Due Dec 1.
- Bonus Project, Due Dec 8.
Homework Assignments
Exam Dates
- Exam 1: Sep 22, 2011
- Exam 2: Oct 18, 2011
- Exam 3: Nov 10, 2011
- Exam 4: 11am, Dec 10, 2011
Grade Distribution
Class Schedule
- Class: Tuesday and Thursday, 1:00-2:30pm, ECSS 2.203
Instructor and TA Information
- Instructor: Dr. I-Ling Yen, ilyen@utdallas.edu, (972)883-6446
- Instructor Office Hours: 10:00am-12:00pm Tuesdays, ECSS 4.402
- TA: Wei Zhu, wxz094120@utdallas.edu
- TA Office Hours: 10:00am-12:00pm Wednesdays, ECSS 4.209
Policies
-
No discussions among students are allowed for homework and lab assignments.
Questions regarding assignments can be discussed with the TA or instructor.
At the end of the semester, we will conduct plagiarism detection on
all projects.
Students who are involved in plagiarism will get an F grade for the course.
-
Debugging is a part of the learning process and should be done by the
student independently. Please do not seek help from TA or instructor
or other students for debugging.
-
All exams will be close book, close notes in the regularly scheduled
class room.
-
All homework assignments are due in class on the due date.
Due to the need to post answers, no late homework will be accepted.
-
Homework and test papers are not returned to students. They are kept
for SAC accreditation.
-
All project assignments are due before the midnight of the due date.
Late project will incur a 15% penalty per day.
-
Please refer to syllabus for all policies regarding this course.