In my mind I was screaming “No! No! No!” because I’ve generally felt that the pain and complexity involved in object-relational and object-XML and object-messaging mapping outweigh the benefits; that if your application is based on exchanging messages, then the message exchange has to be visible to the application programmer. I’m not alone in having this kind of reflex.
Well, it seems that both Ruby on Rails and Seaside would tend to disagree, and the evidence is building up on their side.
And today I had a date with a Vancouver startup that I’ll write up when they’re ready; they have a very damn sophisticated Web app that I wish I’d been smart enough to think of, solid useful function and a ton of graceful little flourishes; and it’s all Seaside, all continuations, all simple methods that conduct orderly dialogues with the user.
Maybe I’m wrong. Maybe you can abstract the Web away. Hmph.
I would be very interested in seeing continuations in a real application; every example I have seen so far was rather trivial. I imagine that there’d be rather complex scalability issues — after all, all of the state has to be maintained somehow … I don’t know how large the overhead created by continuations is, though.