Schedule
Below is the tentative course schedule for the term. The “tentative” is key since the schedule will almost certainly change throughout the term.
Week 1 | |||||
---|---|---|---|---|---|
Tue: 02/02 |
Programming Paradigms
Slides Printable |
Reading: Programming Paradigms |
|||
Thu: 02/04 |
Haskell Basics
Lab1 Slides Printable |
Reading: Overview of Haskell |
Due: Assignment 1 Due: Midterm Presentation |
||
Week 2 | |||||
Tue: 02/09 |
Haskell Basics, Continued
Slides Printable |
Reading: How Pair Programming Really Works |
|||
Thu: 02/11 |
Guards and Pattern Matching
Lab2a Slides Printable |
Reading: Guards and Pattern Matching |
Due: Lab1 |
||
Week 3 | |||||
Tue: 02/16 |
Guards and Pattern Matching, Continued
Lab2b Slides Printable |
Reading: Good Haskell Style |
Due: Lab2a |
||
Thu: 02/18 |
Functional Programming
Lab3 Slides Printable |
Reading: Functional Programming |
Due: Lab2b |
||
Week 4 | |||||
Tue: 02/23 |
Functional Programming, Continued
Slides Printable |
||||
Thu: 02/25 |
Type Classes
Lab4a Slides Printable |
Reading: Type Classes |
Due: Lab3 |
||
Week 5 | |||||
Tue: 03/02 |
Type Classes, Continued
Lab4b Slides Printable |
Due: Lab4a |
|||
Thu: 03/04 |
Algebraic Datatypes
Lab5a Slides Printable |
Reading: Algebraic Datatypes |
Due: Lab4b |
||
Week 6 | |||||
Tue: 03/09 |
Algebraic Datatypes, Continued
Lab5b Slides Printable |
Due: Lab 5a |
|||
Thu: 03/11 |
Classes and Instances
Lab6 Slides Printable |
Reading: Classes and Instances |
Due: Lab5b |
||
Week 7 | |||||
Tue: 03/16 |
Functors, Applicatives, and Monads
Slides Printable |
Reading: Chapter 12 of Hutton |
|||
Thu: 03/18 |
Monadic Parsing
Slides Printable |
Reading: Chapter 13 of Hutton |
Due: Lab6 |
||
Week 8 | |||||
Tue: 03/23 |
Class Presentations
|
||||
Thu: 03/25 |
Class Presentations
|
||||
Week 9 | |||||
Tue: 03/30 |
Class Presentations
|
||||
Thu: 04/01 |
Class Presentations
|
||||
Week 10 | |||||
Tue: 04/06 |
Compilers and Interpreters
Slides Printable |
Reading: Compilers Interpreters |
|||
Thu: 04/08 |
Parsing
Slides Printable |
Reading: Backus–Naur Form Lexical Analysis Parsing |
|||
Week 11 | |||||
Tue: 04/13 |
A Basic Interpreter
Slides Printable |
Reading: A First Look at Interpretation Interpreting Conditionals |
|||
Thu: 04/15 |
Interpreting Functions
Slides Printable |
Reading: Interpreting Functions |
|||
Week 12 | |||||
Tue: 04/20 |
Interpreting Functions, Continued
Slides Printable |
||||
Thu: 04/22 |
Interpreting Anonymous Functions
Slides Printable |
Due: Assignment 2 |
|||
Week 13 | |||||
Tue: 04/27 |
Mutation: Structures and Variables
Slides Printable |
Reading: Mutation: Structures and Variables |
|||
Thu: 04/29 |
Pause for Breath
|
||||
Week 14 | |||||
Tue: 05/04 |
Mutation, Continued
Slides Printable |
Due: Assignment 3 |
|||
Thu: 05/06 |
Putting it All Together
Slides Printable |
||||
Final Evaluation Week |