Compilers Summer 2019
As Steve Yegge said, “If you don’t know how compilers work, then you don’t know how computers work.” This is a course for those who are interested in the design and implementation of programming languages. Compilers let us use a high-level programming language by translating programs into low-level machine code. Understanding how compilers work is essential if you want to be a good programmer. In this course, you will build a working compiler using lex, yacc and LLVM (it’s ok if you don’t know what those terms mean).
Time and place
- Tuesdays 10:30-11:20 BLU-9660
- Thursdays 09:30-11:20. Note: We continue to meet in SCK-9500
- Last day of classes: Aug 2, 2019
- Do not email TAs directly. Use the discussion board only.
- Vishal Batvia,
vbatvia, Office hour: Wednesdays 5:30pm-6:30pm CSIL Labs ASB 9810
- Pooya Moradi,
pmoradi, Office hour: Tuesdays 5:30pm-6:30pm CSIL Labs ASB 9808
- View Calendar
- Subscribe to the URL in your calendaring app rather than saving the file and adding it manually.
Asking for help
- Ask for help on the discussion board
- Instructor office hours: Thursdays 11:30am-12:30pm TASC1 9427
- TA office hours listed above
- Do not email the TAs directly (without cc:ing the instructor) under any circumstance.
- Use only SFU email address and use
cmpt379: as subject prefix
- Submit homework source code and check your grades on Coursys
- Programming setup homework: HW0 due on May 21, 2019 (1%)
- Four programming homeworks. Due dates: HW1 on Jun 4, 2019, HW2 on Jun 18, 2019, HW3 on Jul 9, 2019, HW4 on Jul 30, 2019 (56% total)
- Participation: Helping other students on the discussion board in a positive way (5%)
- In class midterm: Jun 25, 2019, 10:30-11:20am, Location: BLU 9660 (18%)
- Final exam: Aug 9, 2019, 12-3pm, Location: EDB 7618 (20%)