COSC48 Implementation of Programming Languages

Course Guide

The course is centered on xcom, a simple compiler for a simple language on a commercial computer. The term project is to make a significant improvement to xcom.

At the same time the accumulated lore of compiler writing will be covered in lectures, covering such topics as the mathematical basis of compiling, lexing, parsing, type analysis, code generation, automatic parsers and so on.

Submitted Materials

All submitted work is hardcopy. The work must be identified on every page, including at least the name of the author or team.

Individual Work

Homework will be due each Tuesday at the start of class. I encourage students to work together on homework. It is acceptable for two or even three students to hand in one homework assignment signed by all.

There will be midterm and final examinations. Students are not allowed to help each other on the examinations.

CSOC48 Honor Principle

Required Reading


Teams will be chosen early in the course to work together on the term project. Each team will produce one documented extension of xcom.


Grades are not the most important issue in this course. I expect everyone to do well. I expect everyone to help others do well within the limitations given above.

Class grades will be based on contributions to the following list. The first two items are the most important. I will reward quality over quantity.
  • Compiler Project.
  • Examinations.
  • Assignments.
  • Class participation (including attendance and helping classmates).
  • Critiques of the class materials.

Questions about anything can be brought to the Lu He, the teaching assistant or to Bill McKeeman, the instructor.

Created: March 27, 2001
Last modified: March 31, 2009