Schedule and Handouts

Below is the tenative schedule of lectures and assignments. (PP=Programming Project, PS=Problem Set, LY = lex & yacc O'Reilly book)

Week Date Topic / Handout Assign-
ments
Suggested
Reading
Week 1 Tue 24-Jun Syllabus    
Tue 24-Jun Overview    
Thu 26-Jun Lexical Analysis and
Flex Overview
PP1 Assigned Dragon Ch3
LY Ch1, 2
Fri 27-Jun Formal Grammars    
Week 2 Mon 30-Jun Formal Grammars, cont.
Top Down Parsing
  Dragon 4.1-4.3
Tue 01-Jul Section: Regular Exp.
and Grammars
(and code)
Extra: NDFA to DFA Conversion
 
Wed 02-Jul Top Down Parsing, cont.
Bottom Up Parsing
PP1 Due
PS1 Assigned
Dragon 4.4
Thu 03-Jul Bottom Up Parsing, cont.   Dragon 4.5
Week 3 Mon 07-Jul SLR-SR Parsing and
Introduction to Yacc/Bison
PP2 Assigned Dragon 4.6,4.8
LY Ch3
Tue 08-Jul Section: Precedence in Yacc and Bison and code    
Wed 09-Jul LALR Parsing PS1 Due Dragon 4.7
Fri 11-Jul Miscellaneous Parsing    
Week 4 Mon 14-Jul Syntax Directed Translation   Dragon 5.1
Tue 15-Jul LR(0) and NDFA Lambda Removal (solution)    
Wed 16-Jul Semantic Analysis PP2 Due
PP3 Assigned
 
Fri 18-Jul Semantic Analysis, cont.    
Week 5 Mon 21-Jul MIDTERM EXAM    
Fri 25-Jul Runtime Environments    
Week 6 Mon 28-Jul Intermediate Representations
and Three-Address Code
   
Wed 30-Jul Processor Architectures PP3 Due
PP4 Assigned
 
Fri 01-Aug Final Code Generation    
Week 7 Mon 04-Aug Code Optimization Overview    
Wed 06-Aug Work on PP4!    
Week 8 Wed 13-Aug      
Fri 15-Aug FINAL EXAM PP4 Due  
CS143 Resources
Outside Resources
Command References