Text: Compiler Construction: Principles and Practice, by Kenneth C. Louden
This course covers the principles that govern the design and implementation of programming languages. The topics include formal languages, programming language syntax and semantics, parsing, interpretation, and code generation.
The course will include homework, examinations, and a compiler project. You should expect to devote considerable time to the compiler project.
Students are expected to be familiar with Augsburg College policies regarding academic honesty and will be required to sign a statement indicating an understanding of these policies. Programs that you hand in must represent your own work. I encourage you to exchange design ideas on programs, but what you hand in must be your own. Copying of programs is not permitted.
Students who have any disability for which some accomodation would be helpful are urged to contact me.
| Date | Topics | Project (approximate dates) | |
| Sep | 10 | Ch 1 Introduction | -- Go over project |
| 15 | Ch 1 Introduction | ||
| 17 | Ch 2 Scanning | -- Start scanner | |
| 22 | Ch 2 Scanning | ||
| 24 | Ch 2 Scanning | ||
| 29 | Ch 3 Context-Free Grammars and Parsing | ||
| Oct | 1 | Ch 3 Context-Free Grammars and Parsing | |
| 6 | Ch 3 Context-Free Grammars and Parsing | ||
| 8 | Ch 3 Context-Free Grammars and Parsing | -- Start parser | |
| 13 | Ch 3 Context-Free Grammars and Parsing | ||
| 15 | Ch 4 Top-Down Parsing | -- Scanner due | |
| 20 | Exam I Chapters 1-3 | ||
| 22 | Ch 4 Top-Down Parsing | ||
| 27 | Ch 4 Top-Down Parsing | ||
| 29 | Ch 4 Top-Down Parsing | ||
| Nov | 3 | Ch 5 Bottom-Up Parsing | |
| 5 | Ch 5 Bottom-Up Parsing | ||
| 10 | Ch 5 Bottom-Up Parsing | ||
| 12 | Symbol Table Handler and Type Checking | -- Start symbol table handler | |
| 17 | Symbol Table Handler and Type Checking | ||
| 19 | Symbol Table Handler and Type Checking | ||
| 24 | Symbol Table Handler and Type Checking | ||
| 26 | Thanksgiving | ||
| Dec | 1 | MIPS | |
| 3 | MIPS | -- Parser due | |
| 8 | MIPS | ||
| 10 | MIPS | -- Symbol table handler due | |
| 21 | 10:15-12:15 Exam II Chs 1-5, Symbol Table |