ass10 hints
[lambda.git] / new_stuff.mdwn
1 Page for Chris and Jim to see what each other is working on, but hasn't necessarily been posted to main wiki index yet.
2
3 Week11:
4
5 *       [[Tree and List Zippers]]
6 *       [[Coroutines and Aborts]]
7 *       [[From List Zippers to Continuations]]
8 *       [[Assignment8]]
9
10 Week12:
11
12 *       [[List Monad as Continuation Monad]]
13 *       [[Manipulating Trees with Monads]] (reworked), code is at [[code/tree_monadize.ml]]
14 *       [[Monad Transformers]] (added)
15 *       [[Assignment9]]
16
17 New stuff, fairly stable:
18
19 *       [Commentary](/hints/assignment_6_commentary) on some common issues in the solutions to [[Assignment6]].
20 *       [[Translating between OCaml Scheme and Haskell]]
21 *       [[Monad Library]], code is at [[code/monads.ml]]
22 *       [[State Monad Tutorial]]
23 *       [[CPS and Continuation Operators]]
24
25 In progress:
26
27 *       [[Curry-Howard]]
28 *       [[Assignment10]]
29
30 <!--
31
32 from Upcoming Topics, now pointless (sniff...)
33
34
35 14.     Curry-Howard isomorphism between simply-typed lambda and intuitionistic propositional logic<p>
36 15.     The types of continuations; continuations as first-class values
37
38 ## Continuations ##
39
40 0.      [Phil/ling application] Partee on whether NPs should be uniformly interpreted as generalized quantifiers, or instead "lifted" when necessary. Lifting = a CPS transform.
41 1.      Using CPS to handle abortive computations (think: presupposition failure, expressives)
42 2.      Using CPS to do other handy things, e.g., coroutines (cooperative threading)
43 3.      Making evaluation order explicit with continuations
44 4.      Delimited (quantifier scope) vs undelimited (expressives, presupposition) continuations
45 5.      [Phil/ling application] [Barker/Shan on donkey anaphora](http://dx.doi.org/10.3765/sp.1.1)
46 6.      The continuation monad
47
48 ## Preemptively parallel computing and linear logic ##
49
50 1.      Basics of parallel programming: semaphores/mutexes
51 2.      Contrasting "preemptive" parallelism to "cooperative" parallelism (coroutines, above)
52 3.      Linear logic, "logical resource management"
53 4.      [Phil/ling application] Barker on free choice, imperatives
54
55
56 ##Other##
57 17.     [Phil/ling application] Expletives<p>
58 18.     Some references:
59        * [de Groote on the lambda-mu calculus in linguistics](http://www.loria.fr/%7Edegroote/papers/amsterdam01.pdf)
60        * [on donkey anaphora and continuations](http://dx.doi.org/10.3765/sp.1.1)
61        * [Wadler on symmetric sequent calculi](http://homepages.inf.ed.ac.uk/wadler/papers/dual-reloaded/dual-reloaded.pdf)
62 19.     Dependent types
63
64
65 -->