Help me complete a book about magic disguised as a book about mathematics disguised as a book about programming for the web. Read more
This project was successfully funded on January 15, 2011.
Which would you post first?
Dear MDP Backers,
To stay on track with the book schedule i'm going to be posting blog entries about salient points in the book. There are two blog entries that i plan to get out in the next couple of weeks.
One is about taking the design pattern exhibited using delimited continuations to create a "stream" of requests -- whether RabbitMQ or HTTP requests -- and showing how to build a Servlet Filter using this approach.
The other is about modifying this pattern -- which we already illustrated in the RabbitMQ, monadically post -- to support a certain kinds of session state. Specifically, we can imagine a request-response protocol that mimics s-expressions. A session in this protocol corresponds to a valid s-expression with request corresponding to "(" and response corresponding to ")". Unlike HTTP, we could then have certain kinds of session state, for example,
acquire resource 1
request resource 1 data
get resource 1 data
acquire resource 2
request resource 2 data
get resource 2 data
release resource 2
update resource 1 data
resource 1 data updated
release resource 1
which has a session "contour" like ( ( () ( () ) () ) )
i think a protocol like this would clean up a lot of the mess in HTTP -- while maintaining it's essential simplicity. i'm just sayin'.
Of these two entries, which one would you like to see first?