λ CS 251 : Principles of Programming Languages .

Staff / Hours

Instructor: Ben Wood, SCI E128, office hours / contact here
Tutor: Alice Wong, TBD
Tutor: Cecille Yang, TBD

Schedule (jump to now)

MonTueWedThuFri
31 August01 September02 September
  • Snow day!
03 September
  • halting problem (slides; notes)
  • Racket expressions, bindings (notes)
  • Assign: Halt that Racket
04 September
07 September08 September
  • Due: Halt that Racket
09 September10 September11 September
14 September
  • Snow day!
15 September
  • Due: Lists, Lists, Lists
16 September17 September
  • LISP
  • garbage collection (slides)
18 September
21 September22 September
  • Due: Higher-Order Fun
23 September24 September25 September
28 September
  • Assign: Programming Programs
  • ML basics (slides)
29 September30 September01 October02 October
  • Due: Programming Programs
05 October06 October07 October08 October09 October
12 October13 October
  • Due: The Art of ML
14 October15 October16 October
  • start exam window (Saturday AM)
19 October
  • lambda calculus, parameter passing, evaluation order (lc.sml; lc.rkt)
20 October21 October
  • lambda calculus, parameter passing, evaluation order (lc.sml; lc.rkt)
  • end exam window
22 October23 October
26 October27 October28 October29 October30 October
02 November03 November04 November05 November
  • more modules (setex.sml)
  • Assign: Funky Functions
06 November
09 November10 November 11 November12 November13 November
  • Due: Funky Functions
16 November17 November18 November19 November20 November
23 November24 November25 November26 November
  • multiple inheritance, mixins, interfaces (slides)
  • Assign: Project
27 November
30 November01 December
  • Due: SMiLe and Tetris
02 December03 December
  • subtyping + generic types (slides; Subtype.java)
  • implementation implications (slides)
  • Assign: Language Design
  • Checkpoint: Project
04 December
  • Checkpoint: Project
07 December08 December09 December
  • parallelism and concurrency
10 December
  • Due: Language Design
  • parallelism and concurrency
  • wrap up
  • Checkpoint: Project
11 December
14 December Reading Period15 December Reading Period16 December Final Exams17 December Final Exams18 December Final Exams
21 December Final Exams22 December
  • Final Exams
  • Due: Project
23 December24 December25 December

Long-term schedule on the syllabus