Resource Materials

Discussion forum
Project
CS accounts
Previous Years

Course information

Announcements

  • Jan 15: Scoreboard goes live!
  • Jan 7: First class on Friday 8 January 2021. The first lecture slides also serve as the course outline

Project

  • Deadlines

    • Project part 1: Friday 5pm, 5 February 2021
    • Project part 2: Friday 5pm, 26 February 2021
    • Project part 3: Friday 5pm, 19 March 2021
    • Project part 4: Wednesday 5pm, 14 April 2021
  • Description

    The project description is available on the CS gitlab.

Demo

There will be a mandatory demonstration of your coursework taking place between Thursday-Friday, April 15-16, 2021.

Getting help

  • ED online forum

    The primary source of help will be through the ED online platform. Please enroll here: https://edstem.org/us/join/8P3mu3
    All questions should be asked on ED, no email! (unless it is a private matter)
  • Office Hours

    If you cannot make any of these times, contact us for an appointment via ED.

Schedule

Week 1 (Jan 9)
Topics:
Milestones:
  • Register on ED (link above).
  • If you do not have one already, create a CS account to access the CS gitlab (link to document in the right panel).
Week 2 (Jan 11-15)
Topics:
TA on duty
  • Jacob
Milestones:
  • Fork gitlab project and setup
  • Fill in Google form
  • Start working on part 1
Week 3 (Jan 18-22)
Topics:
TA on duty
  • Jacob
Milestones:
  • Finish lexer
Week 4 (Jan 25-29)
Topics:
TA on duty
  • Jacob
Milestones:
  • Finish Parser
Week 5 (Feb 1-5)
Topics:
TA on duty
  • Jacob (project part 1)
  • Jonathan (project part 2)
Milestones:
  • Last chance to finish your Parser! Deadline Feb 5, @5pm
  • Start working on part 2: massage grammar to encode precedence and start modifying your parser.
Week 6 (Feb 8-12)
Topics:
TA on duty
  • Jonathan
Milestones:
  • Finished massaging the grammar and updated parser to produce AST.
Week 7 (Feb 15-19)
Topics:
TA on duty
  • Jonathan
Milestones:
  • Finished with semantic analysis
Week 8 (Feb 22-26)
Topics:
TA on duty
  • Jonathan
Milestones:
  • Last chance to finish part 2! Deadline Feb 26, @5pm
Week 9 (Mar 1-5)
Reading week
Milestones:
  • Start part 3
Week 10 (Mar 8-12)
Topics:
TA on duty
  • Jacob
Milestones:
  • Continue with part 3
Week 11 (Mar 15-19)
Topics:
TA on duty
  • Jacob
Milestones:
  • Deadline part 3: Mar 19, @5pm
Week 12 (Mar 22-26)
Topics:
TA on duty
  • Jonathan
Milestones:
  • Start part 4
Week 13 (Mar 29 - Apr 2)
Topics:
TA on duty
  • Jonathan
Milestones:
  • Part 4: building CFG & computing liveness
Week 14 (Apr 5-9)
Topics:
TA on duty
  • Jonathan
Milestones:
  • Part 4: building interference graph, graph colouring, register allocation
Week 15 (Apr 12-16)
Topics:
TA on duty
  • Jonathan
Milestones:
  • Deadline part 4: Wed, 14 Apr, @5pm