MET CS 568 C1-- Introduction to Language Theory and Compilers

Instructor

Suresh Kalathur, Ph.D.
Assistant Professor, Computer Science Dept.
Boston Univeristy Metropolitan College
808 Commonwealth Ave, Room 250
Boston, MA 02215

E-mail: kalathur@bu.edu
URL:http://people.bu.edu/kalathur
Phone: 617-358-0006
Fax: 617-353-2367

Course Description

The course covers all the details of a modern compiler including scanning, parsing, syntax and semantic analysis, code generation and optimization. The programming assignments will be based on the syntax of a (subset) programming language. Programming assignments can be done with C/C++ using the ACS Unix account, or Microsoft Visual Studio 6.0, or using Java. Practical examples using the compiler principles will be demonstrated.

The course grading will consist of homework problems (theory and programming), a mid term exam (open text), and a final exam (open text).

Course Grading Policy

The course grade will be based on active class participation (10%), assignments (40%), mid term exam (25%), final exam (25%). Assignments are expected to be submitted by their respective due dates. Late submission grades will be scaled with respect to the minimum grade of those submitted on time. The Theory ones will be due the following week. The Programming ones will have two weeks time.

Course Web Site

All course materials will be posted using BU's WebCT site. This requires all students to have an account with the BU computer system. Click here for instructions if you require an account.

Click here to enter WebCT site for this course.

References

Student Conduct Code

Please review the academic conduct code

Tentative Course Schedule

 

#

Date

Lecture

Notes

1 1/18 Introduction
2 1/25 Scanning HW1 (Theory)
3 2/1 ...Scanning, LEX HW2 (Programming)
4 2/8 Parsing HW3 (Theory)
5 2/15 ...Parsing, YACC HW4 (Programming)
6 2/22 ...Parsing  
7 3/1 Context Sensitive Analysis HW5 (Theory)
3/8 Spring Recess (No Class)
8 3/15 Mid Term Exam  
9 3/22 Intermediate Representations  
10 3/29 Code Shape HW6 (Programming)
11 4/5 Code Generation
12 4/12 Code Optimization HW7 (Theory)
  4/19 Monday Schedule, No Class  
13 4/26 Data-Flow Analysis

14 5/3 Final Exam