span.SPELLE
{mso-spl-e:yes;}
span.GRAME
{mso-gram-e:yes;}
Principles that govern the design and implementation of programming languages. Topics include formal languages, programming language syntax and semantics, parsing, interpretation, and code generation. Emphasis on design issues. (Prerequesites: CSC 320 and CSC/PHI 385 or concurrent registration.)
Kenneth C. Louden. Compiler Construction: Principles and Practice. PWS Publishing Company.
Hhomework will be assigned every week or every two weeks, depending on its complexity. I'll accept homework up to one calendar day late, but with a 20% penalty. All submissions are final.
Most homework assignments will involve writing programs in the programming language Java. You must submit a listing of your program, and a copy of its actual output. Your programs will be graded both on correctness (are they free of errors?) and on style (are they easy to understand?).
If you turn in homework by email, you must attach it as an ASCII text file. Please don't use proprietary file formats (like Microsoft Word).
There will be two examinations in this course: a one-hour midterm and a two-hour final. Both examinations will be ``open book.'' To help you answer questions, you will be able to use your textbook, your class notes, and anything else handed out in class. See the schedule for (approximate) dates.
Grades are based on each homework assignment and examination. Your final grade will be based on the number of points you get during the term. About 60% of your grade will be determined by homework, and about 40% will be determined by examinations.
Students are expected to be familiar with
This schedule is approximate and may change it during the term. Chapter
numbers refer to the Louden text. We won't always follow the textbook exactly.
Instead, outside reading may supplement the lectures.
|
|
Sep 4 |
Chapter 1 |
Introduction. History. |
|
|
Sep 9 |
Chapter 1 |
History. |
|
|
Sep 11-18 |
Chapter 2 |
Scanning. |
|
|
Sep 23-25 |
Chapter 3 |
No Class |
|
|
Oct 2-9 |
Chapter 3 |
Context-free grammars. Parsing. |
|
|
Oct 7-14 |
Chapter 4 |
Top-down parsing. |
|
|
Oct 16 |
|
Midterm examination. |
|
|
Oct 21-30 |
Chapter 5 |
Bottom-up parsing. |
|
|
Nov 4 -18 |
|
Symbol tables. Type checking. |
|
|
Nov 20 - Dec 11 |
|
The MIPS computer. |
|
|
Dec 17 |
|
Final examination. |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|