COSC 170
COMPILER CONSTRUCTION
Course Homepage
Spring, 2005


This is a Web site for one semester of 170. Although the course always covers basic compiler techniques and always includes work on some project language, the details may differ quite a bit from semester to semester.


Course Description:
This course provides an overview of basic compiler techniques which are useful in a variety of programming projects. We will cover basic concepts of lexical scanning, parsing and code generation. This semester we will program in Java and learn to use JLex and CUP to help implement our compiler.

Course Syllabus

Homework

Final Exam
This semester's final exam will be a take-home exam which will be handed out on the last day of class (Friday, May 6). The exam will be due at the end of the scheduled exam period - 5:30PM, Friday, May 13. You are welcome to hand in the exam before that time.

UPDATES to MiniOberon project
I'll list changes that I make to code or documents connected with the MiniOberon project. Check here if you're having trouble. If your problem isn't addressed here, check with me.

TinyObe Grammar
Here is the grammar for the subset language used in Assignments #5 and #6.

Sample TinyObe programs
This is just a link to the directory /users/faculty/mikes/170/TinyObe_progs/ on pascal.

MiniOberon Grammar
This is the current formal grammar for our project language this semster (the goal for Assignment #7)

Original MiniOberon Grammar
This is the original formal grammar for our project language this semster (which is not being used any more)

Sample MiniOberon programs
This is just a link to the directory /users/faculty/mikes/170/MiniOberon_progs/ on pascal.

How To Submit Homework
One way to send a whole directory of files to me.

Study topics for midterm exam

Source Files for InToPostfix
This is just a link to the directory on pascal.


CUP Manual
Here is the CUP user's manual in HTML form.

CUP Download
The main CUP site has download instructions.

How To Use Ant on pascal

JLex Manual
Here is the JLex user's manual in HTML form.

JLex Download
The main JLex site has download and installation instructions.


This site created and maintained by Dr. Michael C. Slattery of Marquette University.
You can contact me at mikes (a) mscs.mu.edu.