Continuations in Java
Bill Venners interviews Geert Bevin:
Continuations refer to a functional programming technique that allows you to save the current execution state of a thread, with the possiblity of suspending and later resuming execution. Continuations have been incorporated into several Web application frameworks, including RIFE and WebWork. In this interview with Artima, RIFE project founder Geert Bevin discusses how continuations can simplify complex workflows, and how they are implemented in RIFE.
Very interesting. Although I’ve never looked in earnest at Seaside or other continuation-based Web frameworks, it’s nice to see even more “exotic” ideas becoming mainstream.
I’m not sold on continuations as a programming model for web applications. It’s an interesting idea, but the dreaded back button kills them — Ian Griffiths had a great analysis on his blog a while back (http://www.interact-sw.co.uk/iangblog/2006/05/21/webcontinuations)
However, the more I hang out with the WF folks, the more I become intrigued by the idea of using continuations as an implementation technique for scalable server runtimes.