Week. Lab: Date | Lectures | Reading | Lab |
- T: Aug 26
|
|
|
- Course Overview
- Install Sireum IVE
- Set up private repos
|
- T: Sep 2
|
|
|
- Project M1: Scanner & Parser (due Sep 15)
- Demo: Sireum IVE & ANTLRv4 Plugin
|
- T: Sep 9
|
- Abstract Syntax Tree
- Eclipse JDT
|
|
- Exam 1: Scanners, Parsers & Top-Down Parsers
|
- T: Sep 16
|
- Symbol Table
- Type Checking
- Bottom-up Parsers
|
- Dragon Ch. 2.7 & Ch. 6.1 - 6.5
|
- Project M2: Abstract Syntax Tree (due Sep 29)
- Exam 1 Discussion
- Demo: JDT AstView Plugin
|
- T: Sep 23
|
- Virtual Machine
- Code Generation: Eclipse JDT to Java bytecode using ASM
|
|
- Exam 2: AST, Symbol Table, and Type Checking
|
- T: Sep 30
|
|
|
- Project M3: Type Checking (due Oct 13)
- Exam 2 Discussion
|
- T: Oct 7
|
|
|
- 706 Presentation Topics
- 801 Final Project (due Dec 17)
|
- T: Oct 14
|
- Static Analysis – Overview
- Static Analysis – Control Flow Graph (CFG)
- Static Analysis – Reaching Definition
|
- Nielson-Nielson-Hankin Ch. 1
- Dragon Ch. 9
|
- Project M4: Bytecode Generation (due Oct 27)
- Project M5: Static Analysis (due Nov 10)
- Demo: ASM Bytecode Viewer Plugin
|
- T: Oct 21
|
- Static Analysis – Classic Problems
- Static Analysis – Monotone Dataflow Framework
|
- Nielson-Nielson-Hankin Ch. 2
- Dragon Ch. 9
|
- Exam 3: Virtual Machine, Bytecode Generation, and Bytecode Optimization
|
- No Lab
|
- T: Nov 4
|
|
|
- Exam 4: Static Analysis – CFG, Reaching Definition, Classic Problems, and Monotone Dataflow Framework
|
- T: Nov 11
|
|
|
|
- No Lab
|
- No lab
|
- Thanksgiving Break
|
- T U: Dec 2&4
|
|
|
|