Rajiv Gupta
CS 152: Compiler Design
Instructor: Professor Rajiv Gupta
Office: WCH, Room 408
Email: gupta@cs.ucr.edu
Office Hours: Available by appointment
TA: Mahbod Afarin
Office: WCH, Room 463
Email: mafar001@ucr.edu
Office hours: Available by appointment
Meeting Times:
- (Lectures) MWF, 4:00pm - 4:50pm
- (LAB) Thursday, 11:00am-1:50pm & 2:00pm-4:50pm
Class Homepage: http://www.cs.ucr.edu/~gupta/teaching/152-21s/
- Lexical Analyzer (4/02/21 -- 4/16/21)
- Syntax Analyzer (4/16/21 -- 5/14/21)
- Code Generator (5/14/21 -- 6/04/21)
|
Course Description
This course covers the fundamentals of compiler design, including lexical analysis, parsing, semantic analysis, compile-time memory organization, run-time memory organization, code generation, and compiler portability issues. Laboratory work involves a project and exercises covering various aspects of compilers. For detailed syllabus click here.
Text book
- Kenneth C. Louden. Compiler Construction: Principles and Practice. PWS Publishing Co., 1997.
References
- Aho, Lam, Sethi, and Ullman. Compilers: Principles, Techniques, and Tools, 2/E. Addison-Wesley Publishing Co.
- Cooper and Torczon. Engineering a Compiler. Second Edition. Morgan Kaufmann Publishers.
- Fischer and LeBlanc. Crafting A Compiler With C. Benjamin/Cummings Publishing Co.
Course Requirements
- Project - 35% (Lex: 10%; Parser: 12%; CodeGen: 13%)
- Midterm - 30% (4/30/2021, 4:00pm - 4:50pm)
- Final - 35% (6/08/2021, 7:00pm - 10:00pm)
Policies
- You are responsible for all material covered in the lectures and labs.
- Cheating, fabrication, plagiarism, and unauthorized collaboration (or facilitating any of these) will result in severe penalties and sanctions.
- Examinations must be taken on the date they are given. There will be no exceptions unless you have a very good reason and have received permission well in advance of the date of the
examination.