Lecture Notes
These notes are not intended to be comprehensive, so reading them is not a good substitute for attending class and taking notes. The schedule is tentative and subject to change. %
Week 1:
- [Tu, Jan 16] Overview and Intro to ML in Elm
- [Th, Jan 18] Intro to ML in Elm (continued) and Intro to MVC in Elm
Week 2:
- [Tu, Jan 23 ] Asymptotic Analysis and Persistence
- [Th, Jan 25] More Trees And Then…
Week 3:
- [Tu, Jan 30] Review: Lab 1 Solutions
- [Th, Feb 1] More MVC Examples – Time and randomness
Week 4:
- [Tu, Feb 6] Heaps
- [Th, Feb 8] Leftist Heaps and Binomial Heaps
Week 5:
- [Tu, Feb 13] Lab 3 Discussion
- [Th, Feb 15] Lab 3 Discussion
Week 6:
- [Tu, Feb 20 ] Red-Black Trees
- [Th, Feb 22 ] Red-Black Trees: Delete
Week 7:
- [Tu, Feb 27 ] Tail Recursion, Laziness and Lazy Lists
- [Th, Mar 1 ] Guest Lecture: Kyle Headley, The Random Access Zipper
Week 8:
- [Tu, Mar 6] Lab 4 Discussion
- [Th, Mar 8] Midterm Review #1
Week 9:
- [Tu, Mar 13 ] Midterm Review #2
- [Th, Mar 15 ] Midterm (in class)
Week 10:
- [Tu, Mar 20 ] Queues, Amortized Analysis, Lazy Queues
- [Th, Mar 22 ] Card stacks as lists (in class exercise); Real-Time Queues
Spring Break
- No meetings on March 27 and 29
Week 12:
- [Tu, Apr 3] Functional sequences: Level trees (day 1/2)
- [Th, Apr 5] Functional sequences: Level trees (day 2/2)
Week 13:
- [Tu, Apr 10] Sorting lists, eagerly
- [Th, Apr 12] Sorting streams, lazily
Week 14:
- [Tu, Apr 17] Monads, Day 1/2
- [Th, Apr 19] Monads, Day 2/2
Week 15:
- [Tu, Apr 24] Final exam review
- [Th, Apr 26] Project presentations (Day 1/3)
Week 16:
- [Tu, May 1] Project presentations (Day 2/3)
- [Th, May 3] Project presentations (Day 3/3)