« Links on MacOS X | Main | Recursive Types in Ocaml »

Continuation Typing Questions

What should be the type of a continuation object, if we know only that that continuation object will be used somehow within an HTML page?

There are various ways in which a continuation may be placed in a page, to create different kinds of web interactions. Is it possible to infer something from the HTML structure about how the continuation is used? Our current l:action syntax gives one constrained way in which the continuation can be used, and in that one case we can scan out the form fields that will feed to that continuation.

If we allow continuations to be used in unlimited ways, can we still type the continuations?


What goes into the l:action field is not really a continuation, it is just a value of another html page, so very easy to type.

Typing continuations in ML is also well understood. There's a nice paper by MacQueen and others in JFP. It's pretty straightforward.


My intension is that the contents of the l:action field could also be a continuation (though it might not look that way to th user), and precisely it should be a continuation that accepts "the request" as it's argument (the request represented as a record).

But I also want to be able to use continuations in places other than the l:action field--because not all web interactions amount to just clicking "submit" on a form.

In order to type the continuation and detect that you're using it properly within the page, we have to understand a lot more about HTML than we do. We need to understand, for example, what it means to put a continuation as the value="..." argument for a select option (pop-up menu).

Post a comment