|
CSE Home | About Us | Search | Contact Info |
Syllabus
Meetings: MWF 12:30-1:20, GUG 218.
Instructor: Hal Perkins, CSE 548, perkins[at]cs, office hours: MT 2-3 in the
CSE 006
lab.
TA: Laura Marshall, lmarsh16[at]cs, office hours W 1:30-2:30, Th 2-3 in the
CSE 006 lab.
Class
discussion list
Class
email list archives
Dropbox for assignment and project submission
Project Overview
Starter code (zip file)
Setting up
a svn repository
JFlex documentation
CUP documentation
Intel processor documentation
Project phases. Dates for future parts are tentative, but should give an idea of what to expect.
Homework 1. Due Friday, Jan.
16, at the beginning of class.
Homework 2.
Due Friday, Jan. 30, at the beginning of class.
Homework 3 (short). Due Monday, Feb. 9, at the beginning of class.
A list of final exam topics
This quarter's final: exam sample solution
Some old final exams: au08 wi08 au07 au02 (solution) au98 sp98
A list of midterm topics.
This quarter's midterm: exam sample
solution
Some old midterms: 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. Readings should be done before the associated class.
1. Jan. 5: Course introduction. Slides (1-up, 6-up)
2. Jan. 7: Overview (concl.); Regular expressions and scanners (intro). Read
ch. 1, secs. 2.1-2.4. Slides (1-up, 6-up)
3. Jan. 9: Regular expressions and scanners (cont.)
4. Jan. 12: Scanners (concl.)
5. Jan. 14: Intro to parsing. Read sec. 3.1-3.2. Slides
(1-up, 6-up,
slides with scribbles from lecture)
6. Jan. 16: LR (bottom-up) parsing. Read sec. 3.4-3.5 and computation of First
and Follow sets in Sec. 3.3.4. Slides (1-up, 6-up).
X. Jan. 19: No class. MLK day.
7. Jan. 21: LR parsing (cont.). (slides
with scribbles from lecture)
8. Jan. 23: LR parser construction. Slides (1-up, 6-up)
9. Jan. 26: LR parsers (slides with
scribbles from lecture)
10. Jan. 28: MiniJava parser and AST. Slides (1-up, 6-up)
11. Jan. 30: LL (top-down) parsing. Read sec. 3.3. Slides (1-up, 6-up)
12. Feb. 2: Top-down parsing.
13. Feb. 4: Semantics and type checking. Slides (1-up, 6-up)
14. Feb. 6: Semantics and type checking for MiniJava (1-up, 6-up)
15. Feb. 9: Type checking details; Interpreters (1-up, 6-up)
16.. Feb. 11: Midterm review
17. Feb. 13: Midterm in class.
X. Feb. 16:
No class. Presidents' day.
18. Feb. 18: MiniJava IL generation (1-up, 6-up)
19. Feb. 20: IR codegen
20. Feb. 23: Interlude: visitor pattern (1-up, 6-up)
21. Feb. 25: x86 lite (1-up, 6-up)
22. Feb. 27: x86, Minijava x86 code generation (intro) (1-up, 6-up)
23. Mar. 2: Minijava codegen
24. Mar. 4: Minijava codegen
25. Mar. 6: Instruction selection and register allocation (1-up, 6-up)
26. Mar. 9: Optimization (1-up, 6-up)
27. Mar. 11: Optimization
28. Mar. 13: Dataflow analysis (1-up, 6-up)
X. Mar. 18 (Wed.): Review, afternoon, CSE 403
X. Mar. 19 (Thur.): Final exam, 10:30-12:20
am, EE 045. Contact Perkins if you need to take the exam at the original time
of 8:30..
Computer Science & Engineering University of Washington Box 352350 Seattle, WA 98195-2350 (206) 543-1695 voice, (206) 543-2969 FAX [comments to Hal Perkins] |