Date: Wed, 20 Nov 1996 21:54:50 GMT Server: Apache/1.0.5 Content-type: text/html Content-length: 4373 Last-modified: Wed, 18 Jan 1995 19:58:46 GMT CS 531: Advanced Compiler Construction

CS 531: Advanced Compiler Construction

Winter 1995
TTh 2:00-3:15
120 TMCB

Instructor: Parris K. Egbert
Office: 3328 TMCB
Phone: 378-4029
Office Hours: 9:00 - 10:15 TTh
Email: egbert@cs.byu.edu

Teaching Assistant: Kenneth Li
Office: 3304 TMCB
Phone: 378-8352
Office Hours: TBD
Email: kkl@bert.cs.byu.edu

Text

Compilers: Principles, Techniques, and Tools by Aho, Sethi, and Ullman

Course Description

The purpose of this course is to study advanced topics pertaining to compiler construction. Since CS 431 is a prerequisite to this course, a basic knowledge and understanding of compilers is assumed. This course will take a more in-depth look at compiler topics such as various parsing techniques and grammars, code optimization, error recovery, and type checking.

Grading

Final grades will be determined from the following:
	
	Midterm Exam:	30%
	Final Exam:	35%
	Programs:	30%
	Papers:		 5%

Programs

All programs for this course will be written in either C or C++. You can use any machine you would like. Access to the department PCs or UNIX machines will be given for those who need and desire it. There will be three programs assigned throughout the semester. They will be fairly time consuming and involved, so it is strongly recommended that you begin early on them. You will pass off your assignments by running them on input that I give you and turning in the results. If you begin early on the assignments and budget your time wisely, you will have enough time to complete the assignments. If you don't, you probably won't finish.

Since late homework is such a hassle to deal with, you will be penalized substantially for turning you work in late. The late policy is: a 10% deduction the first day late, 20% the second day, 30% the third day, 40% for the fourth day, 50% for the fifth day, and no credit will be given after that time.

The first program will be to write a lexical analyzer generator. For those of you familiar with LEX, you will essentially be writing a LEX equivalent. The second assignment will be to write a parser generator (like YACC). The third assignment will deal with compiler optimizations.

Papers

You will write two papers this semester. The first will be due Feb. 9, and the second will be due March 30. The papers will be between 3 and 6 pages in length and must contain at least 3 bibliographic references.

For each paper you are to take a research topic in compiler construction, describe the topic, reference work that has been done in the area, and present ways of improving previous work or new ideas for solving the problem at hand. The purpose of the papers is to familiarize you with current work being done in this field. The best way of accomplishing this is to have you research into the current literature and become familiar with journals, conferences and people in this area.

Course Notes

The course notes are available in the reserve section of the library.

Exams

There will be one mid-term exam during the semester on March 2. The final will be held Wednesday, April 26 from 3 PM to 6 PM.

Tentative Course Outline

There is a tentative course outline available.

CS.531 News Group

There is a news group for this class where students can have discussions.
Go to BYU CS Courses BYU CS Dept.
Converted to HTML Wed Jan 18 11:38:29 1995 ...
Updated Wed Jan 18 12:05:45 1995
by Paul E. Black (black@lal.cs.byu.edu)