EECS 337: Systems Programming (Compiler Design)

Fall 2007


Class moves to Nord 400 effective September 6, 2007.

Contents


Instructor and Office Hours

Instructor

Prof. Vincenzo Liberatore
E-mail: vl@case.edu
Office Hours
As an anti-spim measure, please, identify yourself as a student before using the Messenger.

TA

Van Anh Thi Tran (vananh.tran).

Syllabus

Official Syllabus

Design and implementation of compilers and other language processors.  Scanners and lexical analysis; regular expressions and finite automata; scanner generators; parsers and syntax analysis; context free grammars; parser generators; semantic analysis; intermediate code generation; runtime environments; code generation; machine independent optimizations; data flow and dependence analysis.  There will be a significant programming project involving the use of compiler tools and software development tools and techniques.

Prerequisites

EECS 233 and EECS 281.

Lectures

Lecture topics will be posted here prior to class. Advance reading is not required.
Date Topics
November 27 Sections 7.5, 7.6.1, 9.2.
November 15 Sections 7.4.1, 7.4.4, 7.4.5.
November 13 Sections 7.4.2, 7.4.3.
November 8 Section 8.6.
November 1 Sections 8.3, 8.4.
October 30 Sections 8.2, 8.3.1.
October 25 Sections 8.1.
October 11 Sections 7.1, 7.2.
October 2 Sections 6.6, 6.7.
September 27 Section 6.4.
September 20 Section 6.2.
September 18 Sections 4.5, 2.3.1, 2.3.2, 2.3.3, 2.3.4.
September 13 Sections 4.3.1, 4.3.2, 4.3.5, 4.9, 4.1.3, 4.1.4, 2.7.1.
September 11 Sections 2.2, 4.1.1, 4.2
September 6 Class moves to Nord 400. Sections 3.5.1-3.5.3, 3.4.1, 3.4.3, 3.4.4.
September 4 Section 2.1, 2.7.1, 3.1, 3.3
August 30 Java To C
August 28 Chapter 1

Textbook and Links

You can buy the book on your own or follow the link to purchase books from Amazon. A percentage of on-line purchases will be returned to the Networks Lab and will be used to acquire technical books that are made available to students, faculty, and staff. If you have suggestions on books to buy, please send an email to vl@case.edu.

Bison is available in the Jennigs Computing Lab, and can also be downloaded from the bison project web page.

The 2006 Turing Award Lecture.

Grading Scheme


Homework

Hand in: a printed document including source code and comments as well as a CD/flashdrive containing the source code and compiled program.


Exams

Midterm: Thursday, October 18,  10-11:15am, Nord 400
Final:  December 18, 2007, 12:30-3:30pm, Nord 400


Vincenzo Liberatore / vl@case.edu