15-814 Types and Programming Languages (original) (raw)
- Assignments generally are given out Tuesday and are due the following Tuesday, but the schedule may vary.
- Unless otherwise noted, assignments are individual assignments. They must represent your own work. You may consult any public resources such as papers, reports, or lecture notes, but you must explicitly credit such external resources in your answers. You are not permitted to draw upon assignments or solutions from previous instances of this course or other courses in preparing your work. Carnegie Mellon'spolicy on academic integrity applies to this course.
- Some problems may be explicitly annotated as allowing collaboration, with a problem-specific policy spelled out.
- Homeworks may require small implementations, or write-ups with LaTeX or with pencil and paper and scanned as a (legible!) PDF.
- If you want to typeset your answers, some sample LaTeX lecture notes and necessary style file will be posted in the<misc/latex/> directory or are available in the homework handouts.
- Emphasis is on correctness andelegance. Some assignments may be difficult. If you cannot do them, write down your thoughts, but never hand back an incorrect "proof".
- Written homeworks are due at 11:59pm on the due date.
- Homework may be handed in late without penalty if the instructor is notified in advance. See Assignment Due Dates.
- Assigments should be submitted as PDFs via Canvas.
- We will try our best to return graded homework by the end of the week it was due.
- Assignment hand-in and grades are tracked on Canvas.
| Out | Assignment | Reference | Due | Sample Solution | | | | | --- | ---------- | --------------------------------------------------------------------------------- | ------------------------------- | --------------- | ------- | ------ | | | | | | | | | | | | Sep | 8 | Assignment 1 The Untyped λ-Calculus | (LaTeX source) | Tue | Sep | 15 | | | | | | | | | | | | Sep | 16 | Assignment 2 The Simply-Typed λ-Calculus | (LaTeX source) | Tue | Sep | 23 | | | | | | | | | | | | Sep | 22 | Assignment 3 Polymorphism | (LaTeX source) | Tue | Sep | 29 | | | | | | | | | | | | Sep | 29 | Assignment 4 Lazy Pairs and Type Isomorphisms | (LaTeX source) | Tue | Oct | 6 | | | | | | | | | | | | Oct | 8 | Assignment 5 Mutual Recursion | (LaTeX source) | Tue | Oct | 13 | | | | | | | | | | | | Oct | 22 | Mini Project 1 Type Equality, Bidirectional Typing, or Exceptions | (LaTeX source) | Thu | Nov | 5 | | | | | | | | | | | | Nov | 6 | Assignment 6 Parametricity and Data Abstraction | (LaTeX source) | Tue | Nov | 17 | | | | | | | | | | | | Nov | 20 | Assignment 7 Concurrency and Laziness | (LaTeX source) | Tue | Dec | 1 | | | | | | | | | | | | Nov | 3 | Mini Project 2 Garbage Collection | (LaTeX source) | Fri | Dec | 11 | | | | | | | | | | |
[ Home | Schedule | Assignments | Resources | Software ]
fp@cs
Frank Pfenning