The schedule gives the dates of all of the lectures, due dates for homework assignments, exam dates, etc. It also links to all of the course materials – the lecture slides can be viewed by clicking on the links within the schedule table below, and they should render directly in the browser. You’ll also be able to navigate to the in-class exercises and homework assignments from here as well.
All assignments are due by 23:59:59 on the due date.
Meetup scheduling: Due 9/3
Haskell
Date | Lecture Notes | Reading | Quiz | Assignment | Due Date | |||||
---|---|---|---|---|---|---|---|---|---|---|
10/5 | Functions and Types, Standalone Code Examples | Chapter 1, 2 | N/A | N/A | N/A | |||||
10/10 | Data Types, Standalone Code Examples | Chapter 3 | N/A | TBD | TBD | |||||
10/12 | Polymorphism 1 | Chapter 4 | Quiz: Chapter 2 | TBD | TBD 10/17 | No Class | N/A | N/A | N/A | N/A |
10/19 | Polymorphism 2 | Chapter 5 | Quiz: Chapter 3 | Assignment 1 | 10/24 | |||||
10/24 | Higher Order Functions 1 | Chapter 6 | Quiz: Chapter 4 | N/A | ||||||
10/26 | Higher Order Functions 2 | TBD | N/A | Assignment 2 | 10/31 | |||||
10/31 | Haskell Overview | TBD | TBD | TBD | ||||||
11/2 | Lambdas, Composition, and Typeclasses | Chapter 8 | N/A | Assignment 3, Source | 11/7 (1-3), 11/9 (4) | |||||
11/7 | Typeclasses 2: This Time it’s Personal | TBD | N/A | Project 1: tr |
11/13 | |||||
11/9 | State-based Computation 1 | N/A | N/A | N/A | N/A | |||||
11/14 | State-based Computation 2 | Chapter 11, Section 1 (Functors redux) | N/A | N/A | N/A | |||||
11/16 | Functor, Applicative, Monad; Parsing 1 | Chapter 11, Section 2 (Applicative functors) | Quiz: Chapter 11, Section 1 | N/A | N/A | |||||
11/21 | Parsing 2 (src file) | N/A | Quiz: Chapter 11, Section 2 | Project 2: Calculator | 12/1 | |||||
11/30 | Parsing 3 | This handout; Real World Haskell, Ch. 16 (Parsec) | N/A | N/A | N/A | |||||
12/5 | TBD | TBD | Quiz: Real World Haskell, Ch. 16 (Parsec) | Project 2, Part 2 | 12/14 |
Ruby
Date | Lecture | In-class | Assignment | Due Date |
---|---|---|---|---|
8/22 | Course Overview | N/A | N/A | N/A |
8/24 | PL Concepts 1 | Ruby Intro | Ruby Style | 8/27 |
8/29 | Ruby Concepts: Data Types, Expressions, Control Flow, Unit Tests | Ruby Concepts | Ruby Basics | 9/2 |
8/31 | PL Concepts 2 | Ruby Classes | Hangman | 9/8 |
9/5 | Ruby Inheritance | N/A | Scramble | 9/10 |
9/7 | Ruby Modules, Ruby Regex | N/A | Regex Basics, Regex Applied | Basics: 9/13, Applied: 9/17 |
9/14 | Ruby Reflection | N/A | Nim | 9/21 |
9/16 | N/A | Exceptions | N/A | N/A |
9/21 | Ruby Metaprogramming | N/A | DSL | 9/28 |
9/26 | Ruby Methods, Procs | N/A | N/A | N/A |
9/28 | N/A | Ruby + PL Concepts Exam Review | N/A | N/A |
10/3 | N/A | Ruby + PL Concepts Exam | N/A | N/A |