CSC444
Instructor: Doug Lea
Class: T-Th: 9:35
Office/Lab hours: Almost anytime.
Course home page: http://gee.cs.oswego.edu/dl/csc444
Texts
Modern Compiler Implementation in Java second
edition, by Andrew Appel, Cambridge University Press, 2001. This book
also contains information about java-based compiler tools, and the
project language, "minijava". See also the
minijava project support site.
If you want to buy a reference-quality text, the `Dragon book' is
dated but still contains the definitive treatment of many topics in
compilation: Compilers: Principles, Techniques, and
Tools by Aho, Sethi, and Ullman, Addison Wesley, 1986. A few
small passages will be copied as handouts.
Topics
- Lexical Analysis
- Parsing
- Semantic Representation and Analysis
- Run-Time Environments
- Code Generation
- Optimization
Requirements
Subject to minor adjustment:
- Project 70% (submitted in 5 to 7 parts)
- Exams 20% (two @ 10%)
- Exercises 10% (two to four short paper-and-pencil assignments)
Project due dates will be spread as evenly as possible throughout the
semester.
Doug Lea