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) |