CS 421: Compiler Construction


Instructor: Dr. Sunil Shende
Scheduled Time: TTh 1:30pm - 2:50pm (BSB 134)
Pre-requisites: CS 221; CS 231
Office Hours:  TTh 3:00pm - 4:30pm (BSB 320)

 
Required Textbook

Compiler Construction: Theory and Practice, by Kenneth C. Louden, PWS Publ. Co., latest edition, ISBN No. 0-534-93972-4.

Weekly Schedule, Homeworks, Exams

Example code and other external links relevant to the material to be covered in the course can be found here.


Jan.20/22
Introduction; Scanning
Jan.27/29     
Scanning (contd.)
Homework 1
Feb.3/5
Context-free Grammars (CFGs); Parsing
Feb.10/12
CFGs (contd.); Top-down parsing.
Feb.17/19
Top-down parsing (contd.)
Feb.24/26                
LR(0) and SLR(1) bottom-up parsing.
Mar.2/4           
LR(1) and LALR(1) parsing.
Homework 2
Mar.9/11      
Parser-generation and the scanning interface.
Mar.16/18 (Spring Break)
Mar.23/25    
Semantic Analysis
Midterm Exam
Mar.30/Apr.1        
Semantic Analysis (contd.)
Apr.6/8    
Runtime Environments
Homework 3
Apr.13/15
Intermediate Code Generation
Apr.20/22
Intermediate Code (contd.)
Apr.27/29
Code Optimization.

The final exam will be held during finals week at the scheduled time. All homework is due back in class 3 weeks after being assigned (for example, if Homework 1 were to be assigned on January 27th, it would be due back on Feb.17th). Together, the three homework assignments will involve a substantial amount of programming and will be worth 60% of your final grade. The midterm exam and the final exam will each account for 20% of the grade.