csse304 / schedule.html

Schedule

Note that the videos linked in the video section are from Claude Anderson's (older) version of the class. Content-wise, this class should be pretty similar (though I don't promise things will be exactly the same).

Details of due dates, exams, etc. are probably different. So use Claude's videos as a supplement to the in-class lectures, not a replacement.

SessionReading (optional)xTopicsMaterialsVideos
DUE
DUE
1
Thu 04 Sep 2025
SchemeIntro
YouTube video showing how to use trace in Racket
Zoom 1
Intro-1 numbers
Intro-2 symbols and strings
Intro-3 lists pairs begin
Intro-3b more lists
Intro-4 defining procedures trace
Intro-5 local variables recursive procedures
Assignment 0 DUE Thu 04 Sep 2025 11:59 pm
2
Fri 05 Sep 2025
TSPL Ch. 1, 2.1-2.2 lambda
recursive procedures
if, cond, case
offline testing & submission
Lambda
Zoom 2
Second live demo
Lambda the Magnificent
Assignment 1 DUE Fri 05 Sep 2025 11:59 pm
3
Mon 08 Sep 2025
TSPL Section 2.2-2.8
EOPL-1 2-29
course intro
assorted scheme topics
CourseIntro
Zoom 3
cons_list_append
write some recursive procedures
Part left out in sections 2 and 3
Assignment 2 DUE Mon 08 Sep 2025 11:59 pm
4
Tue 09 Sep 2025
TSPL sections 3.2, 4.1-4.4, 6.1-6.4
EOPL-1 67-74
let & and its many flavors
insertion sort
LetVariants
Zoom 4
procedures with variable numbers of arguments
map-apply procedures
Assignment 3 DUE Tue 09 Sep 2025 11:59 pm
5
Thu 11 Sep 2025
TSPL 5.1-5.4
EoPL Forward & Preface
Map & Apply MapApply
Zoom 5
andmap ormap
some prob solutions
Assignment 4 DUE Thu 11 Sep 2025 11:59 pm
6
Fri 12 Sep 2025
EoPL Section 1.1 Procedures that produce procedures
list mutation
ProcedureProcedures
Zoom 6 (kinda outdated, unfortunately)
vectors
list sharing and mutation
two more recursive procedures
Assignment 5 DUE Fri 12 Sep 2025 11:59 pm
7
Mon 15 Sep 2025
EoPL Section 1.2 1.2.1
Re-read TSPL 4.1-4.4 (you'll probably get more out of it on a second reading)
BNF Grammar Specification
s-lists
GrammarsAndLanguages
Zoom 7
largest-in-lists
some prob solutions
Assignment 6a (problems 1-7) DUE Mon 15 Sep 2025 11:59 pm
8
Tue 16 Sep 2025
EoPL Section 1.2.2-1.2.4 Exam 1 specification
s-list procedures
ProgramsAboutSlists
Zoom 8
Assignment 6b (problems 8-11) DUE Tue 16 Sep 2025 11:59 pm
9
Thu 18 Sep 2025
EoPL Section 1.3, 1.4
TSPL Sections 2.9 and 3.5 (you can skip the parts that use define-syntax for now)
compose
case-lambda
OO behavior
OOP
Zoom 9
compose and case lambda
Assignment 7a (problems 1-3) DUE Thu 18 Sep 2025 11:59 pm
10
Fri 19 Sep 2025
EoPL 2.1 procedural abstraction
list-recur
ProceduralAbstraction
Zoom 10
Assignment 7b (problems 4-6) DUE Fri 19 Sep 2025 11:59 pm
11
Mon 22 Sep 2025
EoPL 2.2 snoc and efficient rotate
occurs-bound?
OccursBound
Zoom 12
Assignment 8 DUE Mon 22 Sep 2025 11:59 pm
12
Tue 23 Sep 2025
Exam 1 topics, maybe some example problems Exam1Prep
Teams recording of my discussion of Exam
Assignment 9 DUE Tue 23 Sep 2025 11:59 pm
13
Thu 25 Sep 2025
EoPL 2.3 abstract datatypes
composite datatypes
define datatype
DatatypesParsing
Zoom 15
Assignment 10 DUE Thu 25 Sep 2025 11:59 pm
14
Fri 26 Sep 2025
EoPL 2.4 more on define datatype
parsing LcExpressions
global environments, local environments
DatatypesParsing
Zoom 16
E&C Pre-work 1 DUE Fri 26 Sep 2025 11:59 pm
15
Mon 29 Sep 2025
Catch up on any reading assignments you're behind lambdas, procedures and closures
environments and closures
EnvironmentsAndClosures
Zoom 17
Exam 1 in E104 DUE Mon 29 Sep 2025 8:00 pm
16
Tue 30 Sep 2025
Class cancelled
E&C Pre-work 2 DUE Tue 30 Sep 2025 11:59 pm
17
Thu 02 Oct 2025
EoPL 2.5 environments and closure examples
environment ADT specification
EnvironmentsAndClosures2
Zoom 18
complex e and c example
18
Fri 03 Oct 2025
EoPL 3.1, 3.2 A bit more E&C practice
Environment ADT implementation
EnvironmentsAndClosures3
Zoom 19
Assignment 11 DUE Fri 03 Oct 2025 11:59 pm
19
Mon 06 Oct 2025
TSPL 5.7 (skip call/cc parts) Interpreter initial framework
let, if, lambda
AddLetIfLambda
Zoom 20
E&C Takehome Mini-Exam DUE Mon 06 Oct 2025 11:59 pm
20
Tue 07 Oct 2025
idea of syntax expansion
template based expansions
Macros1
Recorded Lecture
Assignment 13 DUE Tue 07 Oct 2025 11:59 pm
21
Mon 13 Oct 2025
macro variable capture
expansion variables
Macros2
22
Tue 14 Oct 2025
Macros 3
Macros Assignment DUE Tue 14 Oct 2025 11:59 pm
Macros2 Assignment DUE Wed 15 Oct 2025 11:59 pm
23
Thu 16 Oct 2025
Memoization
Multiple return values in scheme
Memoization
Zoom 22
24
Fri 17 Oct 2025
EoPL 3.3, 3.4 Continuations CPS
-Buffalo Solves a CPS Problem Video
Zoom 24
Assignment 14 DUE Fri 17 Oct 2025 11:59 pm
25
Mon 20 Oct 2025
More CPS CPS
26
Tue 21 Oct 2025
EoPL 3.5, 3.6
Skim EoPL 6.2, 6.3
Another CPS conversion example
add letrec to interpreted language
CPSMore2
Zoom 25
Assignment 15 (small individual) DUE Tue 21 Oct 2025 11:59 pm
27
Thu 23 Oct 2025
EoPL 4.1-4.3 Exam Specification
add set! to interpreter
References apply-env-ref and implementations
cells
rib-cage approach to references
memory model (basic idea, no details)
Differences between set! and define.
call/cc warm-up (if we have time)
CPSFinal
Zoom 26
Assignment 16 DUE Thu 23 Oct 2025 11:59 pm
28
Fri 24 Oct 2025
interpreter in CPS form CPSDatatypesInterpreter
Zoom 31
29
Mon 27 Oct 2025
EoPL 4.1-4.3 Receivers
Escape Procedures
def of call/cc
call/cc examples
CallCC1
Zoom 27
30
Tue 28 Oct 2025
EoPL 5.1, 5.2 call/cc examples CallCC2
Zoom 28
Exam 2 in E104 DUE Tue 28 Oct 2025 8:00 pm
31
Thu 30 Oct 2025
TSPL 3.3, 3.4 call/cc examples CallCC3
Zoom 29
Assignment 17 DUE Thu 30 Oct 2025 11:59 pm
32
Fri 31 Oct 2025
example fact with call/cc
Add call/cc to interpreted language
CPSDatatypesInterpreter
Zoom 32
which procedures are substantial?
Add call/cc to our interprerter
factorial with call/cc
33
Mon 03 Nov 2025
Call/cc problems
34
Tue 04 Nov 2025
coroutines Coroutines
Zoom 37
Assignment 18 DUE Tue 04 Nov 2025 11:59 pm
35
Thu 06 Nov 2025
Type Checking Typing
Video
36
Fri 07 Nov 2025
Type Checking 2 ImplicitTyping
Video
37
Mon 10 Nov 2025
Skipped for Exam 2
CallCC Assignment DUE Mon 10 Nov 2025 11:59 pm
38
Tue 11 Nov 2025
Implicit typing ImplicitTyping
Video
39
Thu 13 Nov 2025
imperative form ImperativeForm
Zoom 34
Typing Assignment DUE Thu 13 Nov 2025 11:59 pm
40
Fri 14 Nov 2025
exam prep ExamPreview