15-411

Assignments

Labs

The labs are the heart of this course and count for 70% of your grade. Much of what you learn in this course will be through completing these labs. Labs can be done individually or in pairs. All deadlines are 11:59pm on the due date.

Some labs come with checkpoints, which are optional and will not be graded.

Late policy for labs: See policies.

Lab Topic Release Due
Lab 0 Teaming Questionnaire Jan 12 Jan 18
Lab 1 Straight Line Code; Checkpoint Jan 19 Jan 26 (test cases), Feb 2 (compiler)
Lab 2 Control Feb 2 Feb 9 (test cases), Feb 16 (compiler)
Lab 3 Functions Feb 16 Feb 23 (test cases), Mar 1 (compiler)
Lab 4 Memory Mar 8 March 15 (test cases), Mar 26 (compiler)
Lab 5 Optimizations Mar 26 Apr 10 (compiler), Apr 16 (report)
Lab 6 Topics
- LLVM
- Garbage Collection
- C0 and Beyond
- Choose Your Own Adventure
Apr 16 May 4 (compiler), May 4 (report)

Written Assignments

Written assignments are to be completed individually. They are handed in as PDFs through Gradescope. We expect you to use word processing or typesetting software for your assignments where appropriate, but hand-drawn diagrams are acceptable if they are done neatly. All deadlines are 11:59pm on the due date.

LaTeX Dependencies: homework.sty ; compilerstoolbox.sty

Late policy for individual written assignments: See policies.

Assignment Topic Release Due
Assignment 1 Backend (LaTeX source) Jan 23 Jan 30
Assignment 2 Statics (LaTeX source) Feb 6 Feb 13
Assignment 3 Middle (LaTeX source) Feb 20 Feb 27
Assignment 4 Dynamics (LaTeX source) Mar 12 Mar 19
Assignment 5 Lab 6 Proposal Mar 26 Apr 2