CS544-F05: Compiler Construction

CS544 teaches you how to design and implement a compiler. It covers the theory of language processing and the application of the theory to the actual engineering of a compiler for a non-trivial language. Studying compiler construction brings together material from several of your previous courses and applies them to a specific area. The main course contributions to compiler construction are:

Even if you never implement a compiler, you will learn valuable principles of language processing that you will apply to other applications and areas in your career.

Compiler construction is a hands-on course. There is a significant project as well as several homeworks. We also will use professional tools to perform the work. These include JavaCC, Eclipse, and SPIM (a MIPS simulator). You should be proficient in Java programming in order to succeed in this class. If you know another object-oriented language, like C++ or C#, you will be able to pick up Java enough to work with it by spending some extra time on the course.

When you complete the course you will have achieved the following:

Some of the minor outcomes for this course are:

Further information

There is a lot of information that you need to access and absorbduring the term. I have tried to give you as much information as possible and make it easy to find. The following links provide a map to the top level of the information.

Students with special needs

If you need course adaptations or accommodations because of a disability, or if you have medical information to share with me, please make an appointment with me as soon as possible. My office location and hours are on my home page. If you have not already done so, students with disabilities, who believe that they may need accommodations in this class, are encouraged to contact the Disability Services Office (DSO), as soon as possible to ensure that such accommodations are implemented in a timely fashion. The DSO is located in Daniels Hall, (508) 831-5235.


Modified: 25-Oct-2005
Gary Pollice