Schedule of Meetings

Date Topic Reading or task
Jan 18 Wed Initial meeting admin. Course overview. Bring your laptop, install Rust, install Adapton Lab for Rust. Read documentation (the README). Expore source code linked to documentation. Explore output.
20 Fri Memoization Two readings to discuss in class:
  • Read Michie68: Memo functions and machine learning, Nature 1968.
  • Read Pugh89: Incremental computation via function caching, POPL 1989.
23 Mon Memoization and dependency graphs One reading to discuss in class:
  • Read Hammer14: Adapton: Composable, demand-driven incremental computation, PLDI 2014.
25 Wed Nominal memoization (via the demanded computation graph (DCG)) One reading to discuss in class:
  • Read Hammer15: Incremental Computation with Names, OOPSLA 2015.
27 Fri Types for nominal memoization One reading to discuss in class (Section 2):
  • Read Hammer16: Typed Adapton: Refinement types for nominal memoization, (TR, Oct 2016).
30 Mon Adapton in Rust Install Adapton Lab.
Read this Example.
Feb 1 Wed Substructural types One reading to discuss in class:
3 Fri (Vistors from Western) Optional: Attend special presentation and discussion in ATLAS 206
6 Mon Self-Adjusting Computation (SAC): Day 1 Two readings to discuss in class:
  • Read Acar2002: Adaptive Functional Programming, POPL 2002.
  • Read Carlsson2002: Monads for Incremental Computing, ICFP 2002.
8 Wed SAC: Day 2 One reading to discuss in class:
  • Read Acar2005: A Library for Self-Adjusting Computation, ML Workshop 2005.
10 Fri SAC: Day 3 One reading to discuss in class:
  • Read Acar2006: An Experimental Analysis of Self-Adjusting Computation, PLDI 2006.
13 Mon Abstractions supported by compilation Readings discussed in class:
  • Acar2008 (another PDF): Self-adjusting Computation with Delta ML.
  • LeyWild2008: Compiling Self-Adjusting Programs with Continuations, ICFP 2008.
15 Mon Cost semantics One readings to discuss in class:
  • LeyWild2009: A Cost Semantics for Self-Adjusting Computation
17 Fri (No class) (prospective PhD student visit day)

Matthew A. Hammer

Valid XHTML 1.0!