|CSE Home||About Us||Search||Contact Info|
Lectures: MWF 12:30-1:20, EE 037
Sections: Th 1:30 (AA) Loew 216, Th 2:30 (AB) Loew 202.
Instructor: Hal Perkins, CSE 548, perkins[at]cs, office hours MW 2-3, CSE 002; plus in my regular office when I'm there and the door is open.
TA: Hadi Esmaeilzadeh, hadianeh[at]uw, office hours Tue 2-3, Fri 3-4, CSE 002.
Class email list archives
for assignment and project submission
Homework 1. Due Wed., Oct. 13, either on paper at the beginning of class,
or online by 11 pm.
Homework 2. Due Mon., Oct. 25, either on paper at the beginning of class, or online by 11 pm.
Homework 3. Due Wed. Nov. 3, either on paper at the beginning of class or online by 11 pm. No late assignments accepted after 11 pm, Nov. 3 so we can hand out solutions in sections Nov. 4 before the midterm on Nov. 5.
A list of final exam topics
This quarter's final: exam sample solution
Some old final exams: wi10 (solution) wi09 (solution) au08 wi08 au07
A list of midterm topics.
This quarter's midterm: exam sample solution
Some old midterms: wi10 (solution) wi09 (solution) au08 wi08 (solution) au07 sp99 sp98 (solution notes)
In addition, old CSEP501 exams (the PMP compiler course) might also be useful for studying.
Schedule to be updated as the quarter progresses. Slides will be posted normally no later than the evening before class and links will likely be broken before then. Readings should be done before the associated class.
1. Sept. 29: Course introduction. slides
S1. Sept. 30: no section
2. Oct. 1: Intro & history (concl.)
3. Oct. 4: Regular expressions and scanners (intro). Read ch. 1, secs. 2.1-2.4. slides
4. Oct. 6: Scanners (concl.)
S2. Oct. 7: Project, scanners and regular expressions
5. Oct. 8: Intro to parsing. Read sec. 3.1-3.2. slides
6. Oct. 11: LR (bottom-up) parsing start. Read sec. 3.4. slides
7. Oct. 13: LR parsing (cont.)
S3. Oct. 14: Parsing
8. Oct. 15: LR parsing (concl.);
9. Oct. 18: LR conflicts and table construction. Read Sec. 3.5 and computation of First and Follow sets in Sec. 3.3.4. slides
10. Oct. 20: LR construction extended example
S4. Oct. 21: First/follow sets, parsers
11. Oct. 22: IRs slides; AST and visitor pattern slides
12. Oct. 25: AST and visitor pattern slides;
13. Oct. 27: Visitor pattern (damage control from Monday); LL parsing & recursive descent. slides
S5. Oct. 28: No sections this week.
14. Oct. 29: LL grammars and parsing
15. Nov. 1: Static semantics and type checking slides
16. Nov. 3: Attribute gramars; symbol tables (cont.)
S6. Nov. 4: Midterm review
17. Nov. 5: Midterm in class
18. Nov. 8: Types, semantics wrapup.
19. Nov. 10: x86 overview slides
X. Nov. 11: no section, Veteran's Day holiday
20. Nov. 12: x86
21. Nov. 15: x86 function calling conventions
22. Nov. 17: Code shape I - basic constructs. slides
S7. Nov. 18: No sections today - Football Thursday. Extra office hours in lab during section times.
23. Nov. 19: Code shape
24. Nov. 22: Code shape II - objects and dynamic dispatch slides
25. Nov. 24: Class canceled - snow happened in Seattle
X. Nov. 25-26: No section or lecture. Many turkeys meet their demise.
26. Nov. 29: Running minijava - project details slides
27. Dec. 1: Running minijava; Backend overview slides
S8. Dec. 2: Project, misc. topics.
28. Dec. 3: Instruction selection and scheduling
29. Dec. 6: Register allocation by graph coloring
30. Dec. 8: Optimization survey slides
S9. Dec. 9: Wrapup and review
32. Dec. 10: Compiling dynamic langauges slides
Dec. 15 (Wed): Review session, 4:30, CSE 403
Dec. 16 (Thur): Final exam, 8:30-10:20 am, EE 045.
Computer Science & Engineering
University of Washington
Seattle, WA 98195-2350
(206) 543-1695 voice, (206) 543-2969 FAX
[comments to Hal Perkins]