Recently I
googled,
and discovered this year-old email from
Vadim
about
continuations for web UI programming.
I generally know what continuations are from SICP and other
Lisp/Scheme books, but I've never worked with them. Nor have I yet
read the various papers Vadim referenced, but so far this all sounds
interesting, maybe even useful.
Tcl doesn't have first class continuations of course, but presumably
they could be added? Or simulated? How hard or ugly would that be?
Do Tcl's lack of lexical closure or scoping make it harder?
The referenced
thread from the lightweight languages list
at shows some very enthusiastic support, but I think I'd need to look
at code implementing a real web-development framework using
continuations to understand what the supposed big win is really all
about, and how it actually works in practice.
E.g., if you want to stuff a whole lot of state into continuations
(more than just a helper for a two-page form submit, say) then
presumably you get to worry about whether or how to properly store
that stuff someplace that won't vanish when your web server restarts,
like the RDBMS. So where and how is the dividing line drawn between
session state more or less implicitly stored in continuations, and
explicitly stored data in the RDBMS?
Who here knows more about this stuff? Thoughts?