1 This is very sketchy at this point, but it should give a sense of our intended scope.
3 ## Side-effects and mutation ##
5 1. What difference imperativity makes
6 2. Side-effects in a purely functional setting, via monads
7 3. [Phil/ling application]Semantics for DPL, using state monad
8 4. Passing by reference
9 5. [Phil/ling application] Fine and Pryor on "coordinated contents" (see, e.g., [Hyper-Evaluativity](http://www.jimpryor.net/research/papers/Hyper-Evaluativity.txt))
11 14. Curry-Howard isomorphism between simply-typed lambda and intuitionistic propositional logic<p>
12 15. The types of continuations; continuations as first-class values
16 0. [Phil/ling application] Partee on whether NPs should be uniformly interpreted as generalized quantifiers, or instead "lifted" when necessary. Lifting = a CPS transform.
17 1. Using CPS to handle abortive computations (think: presupposition failure, expressives)
18 2. Using CPS to do other handy things, e.g., coroutines
19 3. Making evaluation order explicit with continuations (could also be done earlier, but I think will be helpful to do after we've encountered mutation)
20 4. Delimited (quantifier scope) vs undelimited (expressives, presupposition) continuations
21 5. [Phil/ling application] [Barker/Shan on donkey anaphora](http://dx.doi.org/10.3765/sp.1.1)
22 6. The continuation monad
24 ## Preemptively parallel computing and linear logic ##
26 1. Basics of parallel programming: semaphores/mutexes
27 2. Contrasting "preemptive" parallelism to "cooperative" parallelism (coroutines, above)
29 4. [Phil/ling application] Barker on free choice, imperatives
33 17. [Phil/ling application] Expletives<p>
35 * [de Groote on the lambda-mu calculus in linguistics](http://www.loria.fr/%7Edegroote/papers/amsterdam01.pdf)
36 * [on donkey anaphora and continuations](http://dx.doi.org/10.3765/sp.1.1)
37 * [Wadler on symmetric sequent calculi](http://homepages.inf.ed.ac.uk/wadler/papers/dual-reloaded/dual-reloaded.pdf)