Schedule¶
Fall 2026. Every row below is a real calendar date — click through to a module, lab, or homework page wherever one is linked; unlinked items aren't posted yet.
How to read the "Class" column:
- 🟧 Together — required attendance, with an in-class activity (demo, lab, or discussion) planned.
- 🟪 Flexible — if you're caught up on assigned work, you don't need to attend; otherwise, use the time to work on CS 131 with staff around to help.
See the syllabus's Attendance section for the full policy.
Module completions are due by 9:30am on the day listed in the "Module" column — before class starts. Each week's table also carries any homework released or due that week, and marks holidays where there's no class.
Week 1 — September 1–6¶
| Date | Class | Module (due 9:30am) | Lab / Activity | Homework |
|---|---|---|---|---|
| Tue Sep 1 | Class 1 — 🟧 Together — Intro | Released: HW 01: peoPLe | ||
| Thu Sep 3 | Class 2 — 🟧 Together — Haskell Live Interactive Demo | 1.1 Intro / what is CS131? | Lab 01: Getting Connected and Running Haskell | |
| Sun Sep 6 | Due: HW 01: peoPLe · 11:59pm |
Week 2 — September 7–10¶
| Date | Class | Module (due 9:30am) | Lab / Activity | Homework |
|---|---|---|---|---|
| Mon Sep 7 | 🎉 Labor Day — no class | |||
| Tue Sep 8 | Class 3 — 🟧 Together — Haskell and Functional Programming | 2.1 Intro to Haskell | Lab 02: GHCi Basics | Released: HW 02: FUNctional Programming |
| Thu Sep 10 | Class 4 — 🟪 Flexible — Haskell and Functional Programming | 2.2 Functional Programming and HOF |
Week 3 — September 14–17¶
| Date | Class | Module (due 9:30am) | Lab / Activity | Homework |
|---|---|---|---|---|
| Mon Sep 14 | Due: HW 02: FUNctional Programming · 11:59pm | |||
| Tue Sep 15 | Class 5 — 🟧 Together — Lists & Pattern Matching | 3.1 FP, HOF, Lists | Lab 03: Tuples, Stacks, and Currying | Released: HW 03: Lists, Datatypes, and a Stack Machine |
| Thu Sep 17 | Class 6 — 🟪 Flexible — Data Types & Pattern Matching | 3.2 Data Types |
Week 4 — September 21–24¶
| Date | Class | Module (due 9:30am) | Lab / Activity | Homework |
|---|---|---|---|---|
| Mon Sep 21 | Due: HW 03: Lists, Datatypes, and a Stack Machine · 11:59pm | |||
| Tue Sep 22 | Class 7 — 🟧 Together — Syntax / Semantics | 4.1 Syntax / Semantics | Lab 04: Boolean Expressions | Released: HW 04: Little Languages (Random Art and Regular Expressions) |
| Thu Sep 24 | Class 8 — 🟧 Together — Eval | 4.2 Eval / Interpretation | 📝 Quiz 1 |
Week 5 — Sep 28 – Oct 1¶
| Date | Class | Module (due 9:30am) | Lab / Activity | Homework |
|---|---|---|---|---|
| Mon Sep 28 | Due: HW 04: Little Languages (Random Art and Regular Expressions) · 11:59pm | |||
| Tue Sep 29 | Class 9 — 🟧 Together — Eval / Compiling | 5.1 Scope | Lab 05: PicPlot | Released: HW 05 Simple PicPlot Compiling |
| Thu Oct 1 | Class 10 — 🟪 Flexible — Eval / Closures |
Week 6 — October 5–8¶
| Date | Class | Module (due 9:30am) | Lab / Activity | Homework |
|---|---|---|---|---|
| Mon Oct 5 | ||||
| Tue Oct 6 | Class 11 — 🟧 Together — Parsing (covered by a TA while the instructor is traveling) | 6.1 Parsing | Lab 06: A First Look at Parsing piq | Released: HW 06 PicPlot Parsing |
| Thu Oct 8 | Class 12 — 🟪 Flexible — Parsing (covered by a TA while the instructor is traveling) | 6.2 Parser Combinators |
Week 7 — October 12–15¶
| Date | Class | Module (due 9:30am) | Lab / Activity | Homework |
|---|---|---|---|---|
| Mon Oct 12 | Due: HW 05 Simple PicPlot Part 1: Compiling · 11:59pm | |||
| Tue Oct 13 | Class 13 — 🟧 Together — piq2plot Check In | |||
| Thu Oct 15 | Class 14 — 🟧 Together — Quiz 2 | 📝 Quiz 2 |
Week 8 — October 19–22¶
| Date | Class | Module (due 9:30am) | Lab / Activity | Homework |
|---|---|---|---|---|
| Mon Oct 19 | 🎉 Fall Break — no class | |||
| Tue Oct 20 | 🎉 Fall Break — no class | |||
| Thu Oct 22 | Class 15 — 🟪 Flexible — Functors / Monads | 7.1 Functors | Due: HW 06 PicPlot Part 2: Parsing · 11:59pm |
Week 9 — October 26–29¶
| Date | Class | Module (due 9:30am) | Lab / Activity | Homework |
|---|---|---|---|---|
| Mon Oct 26 | ||||
| Tue Oct 27 | Class 16 — 🟧 Together — Functors / Monads | 7.2 Monads | Lab 07: From Higher-Order Functions to Monads | Released: HW 07: Discovering Monads by Building Interpreters |
| Thu Oct 29 | Class 17 — 🟪 Flexible — Functors / Monads |
Week 10 — November 2–5¶
| Date | Class | Module (due 9:30am) | Lab / Activity | Homework |
|---|---|---|---|---|
| Mon Nov 2 | Due: HW 07: Discovering Monads by Building Interpreters · 11:59pm | |||
| Tue Nov 3 | Class 18 — 🟪 Flexible — Lambda Calc | 8.1 Lambda Calc | ||
| Thu Nov 5 | Class 19 — 🟧 Together — Lambda Calc | 8.2 Lambda Calc | Lab 08: Lambda Calc | Released: HW 08: Lambda Calculus |
Week 11 — November 9–12¶
| Date | Class | Module (due 9:30am) | Lab / Activity | Homework |
|---|---|---|---|---|
| Mon Nov 9 | ||||
| Tue Nov 10 | Class 20 — 🟪 Flexible — Lambda Calc | 8.3 Lambda Calc | ||
| Thu Nov 12 | Class 21 — 🟪 Flexible — Lambda Calc | Lambda Calc |
Week 12 — November 16–19¶
| Date | Class | Module (due 9:30am) | Lab / Activity | Homework |
|---|---|---|---|---|
| Mon Nov 16 | Due: HW 08: Lambda Calculus · 11:59pm | |||
| Tue Nov 17 | Class 22 — 🟧 Together — Lambda Calc → Raskell | 9.1 LC → Raskell | Lab 09: S-Exps (Raskell) | Released: HW 09 Raskell |
| Thu Nov 19 | Class 23 — 🟧 Together — Lambda Calc → Raskell | 9.2 LC → Raskell | 📝 Quiz 3 |
Week 13 — November 23–26¶
| Date | Class | Module (due 9:30am) | Lab / Activity | Homework |
|---|---|---|---|---|
| Mon Nov 23 | Due: HW 09 Raskell · 11:59pm | |||
| Tue Nov 24 | 🎉 Thanksgiving Break — no class | |||
| Thu Nov 26 | 🎉 Thanksgiving Break — no class |
Week 14 — December 1–3¶
| Date | Class | Module (due 9:30am) | Lab / Activity | Homework |
|---|---|---|---|---|
| Tue Dec 1 | Class 24 — 🟧 Together — Types | 10.1 Types | Lab 10: Types | Released: HW 10: Types |
| Thu Dec 3 | Class 25 — 🟪 Flexible — Types | 10.2 Types |
Week 15 — December 7–10¶
| Date | Class | Module (due 9:30am) | Lab / Activity | Homework |
|---|---|---|---|---|
| Mon Dec 7 | Due: HW 10: Types · 11:59pm | |||
| Tue Dec 8 | Class 26 — 🟧 Together — Wrap up | 10.3 Types | ||
| Thu Dec 10 | Class 27 — 🟧 Together — Wrap up | 📝 Quiz 4 |