Week 1 (Jan 7-11) |
Topics: |
|
Readings: |
- Crafting a Compiler: Chapters 1, 2 and 3
- Students without COMP 330: Learn the basics of regular expressions/languages and context-free languages. A good online resource can be found here
|
Milestones: |
- Start to form groups (3 people per group recommended)
|
Week 2 (Jan 14-18) |
Topics: |
|
Readings: |
-
Crafting a Compiler (recommended):
- Chapter 4.1-4.4
- Chapter 5.1-5.2
- Chapter 6.1-6.2; 6.4
-
Crafting a Compiler (optional):
- Chapter 4.5
- Chapter 5.3-5.9
- Chapter 6.3; 6.5
|
Milestones: |
- Continue forming your groups
- Learn the basics of flex/bison or SableCC
- Assignment 1 posted. Due: Saturday, January 26th
|
Week 3 (Jan 21-25) |
Topics: |
|
Readings: |
- Crafting a Compiler: Chapter 7
|
Milestones: |
- Add/Drop deadline: Tuesday, January 22nd
- Assignment 1 Due: Saturday, January 26th
|
Week 4 (Jan 28-Feb 1) |
Topics: |
|
Readings: |
- Crafting a Compiler: Chapter 8.1-8.9
|
Milestones: |
- Assignment 2 posted. Due: Sunday, February 10th
|
Week 5 (Feb 4-8) |
Topics: |
|
Readings: |
- Crafting a Compiler: Chapter 10.1-10.2
|
Milestones: |
- Assignment 2 Due: Sunday, February 10th
|
Week 6 (Feb 11-15) |
Topics: |
|
Readings: |
|
Milestones: |
- Milestone 1 posted. Due: Saturday, March 2nd
|
Week 7 (Feb 18-22) |
Topics: |
|
Week 8 (Feb 25-Mar 1) |
Topics: |
|
Milestones: |
- No class Monday
- Midterm: February 26th from 6:00-7:30 PM in MC 103/321
- Milestone 1 Due: Saturday, March 2nd
- Milestone 2 posted. Due: Sunday, March 17th
- Peephole posted. Due: Friday, April 12th
|
Readings: |
- Cheat Sheet: JVM
- Crafting a Compiler: Chapter 13.6
|
Reading Week Mar 4-Mar 8 (No Class) |
Week 9 (Mar 11-15) |
Topics: |
|
Readings: |
- Crafting a Compiler: Chapter 12.4
|
Milestones: |
- Milestone 2 Due: Sunday, March 17th
|
Week 10 (Mar 18-22) |
Topics: |
|
Milestones: |
- Milestone 3 posted. Due: Wednesday, March 27th
- Milestone 4 posted. Due: Wednesday, April 10th
- Final report posted. Due: Wednesday, April 10th
|
Week 11 (Mar 25-29) |
Topics: |
- Native Code Generation (continued)
- WebAssembly (updated Mar 31)
|
Milestones: |
- Milestone 3 Due: Wednesday, March 27th
|
Week 12 (Apr 1-5) |
Topics: |
|
Week 13 (Apr 8-12) |
Topics: |
|
Milestones: |
- Milestone 4 Due: Wednesday, April 10th
- Final Report/Compiler Due: Friday, April 12th
- Peephole Due: Friday, April 12th
|
Resources: |
|