Compilers (CS362 2002F)

CS362 2002F Course Syllabus

This is a highly approximate syllabus. Expect topics, assignments, ordering, and almost everything else to change.

Week One: Introduction

Class 01 (Friday, August 30, 2002) Getting Started

Assignments

Class 02 (Monday, September 2, 2002) Compilation Steps

Assignments

Class 03 (Wednesday, September 4, 2002) Introduction to Lexical Analysis and Regular Expressions

Due

Week Two: Lexical Analysis with Finite Automata

Class 04 (Friday, September 6, 2002) Regular Expressions, Continued

Class 05 (Monday, September 9, 2002) Finite Automata

Due

Class 06 (Wednesday, September 11, 2002) From Specification to Optimal DFA

Assignments

Week Three: Syntactic Analysis

Class 07 (Friday, September 13, 2002) From Specification to Optimal DFA, Continued

Class 08 (Monday, September 16, 2002) Introduction to Grammars and Parsing

Assignments

Class 09 (Wednesday, September 17, 2002) Context-Free and Context-Sensistive Grammars

Due

Week Four: Syntactic Analysis

Class 10 (Friday, September 20, 2002) Ambiguous Grammars

Class 11 (Monday, September 23, 2002) Parsing Expressions

Class 12 (Wednesday, September 25, 2002) Predictive Parsing

Week Five: Syntactic Analysis, Continued

Class 13 (Friday, September 27, 2002) Predictive Parsing, Continued

Due

Assignments

Class 14 (Monday, September 30, 2002) Even More Predictive Parsing

Class 15 (Wednesday, October 2, 2002) Predictive Parsing, Concluded

Week Six: From Parsing to Type Checking

Class 16 (Friday, October 4, 2002) Shift-Reduce Parsing

Due

Class 17 (Monday, October 7, 2002) Shift-Reduce Parsing, Continued

Assignments

Class 18 (Wednesday, October 9, 2002) Shift-Reduce Parsing, Concluded

Assignments

Week Seven: Type Checking

Class 19 (Friday, October 11, 2002) Semantic Actions

Class 20 (Monday, October 14, 2002) Introduction to Type Checking

Class 21 (Wednesday, October 16, 2002) Type Equivalence

Week Eight: Stack Frames

Class 22 (Friday, October 18, 2002) Type Checking, Concluded

Class 23 (Monday, October 28, 2002) Coding Style

Class 24 (Wednesday, October 30, 2002) Stack Frames

Break

Break runs from 5:00 p.m. on Friday, March 17, 1998 to 8:00 a.m. on Monday, April 3.

Week Nine: Generating Code

Class 25 (Friday, November 1, 2002) More Stack Frames

Class 26 (Monday, November 4, 2002) Symbol Tables

Class 27 (Wednesday, November 6, 2002) Symbol Tables, Continued

Week Ten: Generating Code, Continued

Class 28 (Friday, November 8, 2002) Translating Declarations and Expressions

Class 29 (Monday, November 11, 2002) Translating Conditionals

Class 30 (Wednesday, November 13, 2002) Translating Loops

Week Eleven: Putting it Together

Class 31 (Friday, November 15, 2002) Translating Procedure Calls

Class 32 (Monday, November 18, 2002) Liveness Analysis

Class 33 (Wednesday, November 20, 2002) Register Allocation

Week Twelve: Assembly Language Programming

Class 34 (Friday, November 22, 2002) Class Canceleld

Class 35 (Monday, November 25, 2002) Steps in Compilation, Revisited

Class 36 (Wednesday, November 27, 2002) Steps in Compilation, Continued

Week Thirteen: Code Improvement

Class 37 (Monday, December 2, 2002) General Improvement Techniques

Class 38 (Wednesday, December 4, 2002) Additional Improvement Techniques

Class 39 (Friday, December 6, 2002) Student Presentations (1)

Not yet available

Week Fourteen: Wrapup

Attendance is particularly important this week.

Class 40 (Monday, December 9, 2002) Student Presentations (2)

Not yet available

Class 41 (Wednesday, December 11, 2002) Student Presentations (3)

Not yet available

Class 42 (Friday, December 13, 2002) Evaluation

 

History

The history will not include small changes to the summaries of individual classes or perhaps even on the arrangement of courses. You can find more information on such changes in the individual outlines.

Thursday, 29 August 2002

 

Disclaimer: I usually create these pages on the fly, which means that I rarely proofread them and they may contain bad grammar and incorrect details. It also means that I tend to update them regularly (see the history for more details). Feel free to contact me with any suggestions for changes.

This document was generated by Siteweaver on Fri Nov 15 10:30:28 2002.
The source to the document was last modified on Thu Aug 29 15:27:30 2002.
This document may be found at http://www.cs.grinnell.edu/~rebelsky/Courses/CS362/2002F/Handouts/syllabus.html.

You may wish to validate this document's HTML ; Valid CSS! ; Check with Bobby

Glimmer Labs: The Grinnell Laboratory for Interactive Multimedia Experimentation & Research
glimmer@grinnell.edu