[Seaside] Porting to ST/X

Avi Bryant avi@beta4.com
Tue, 12 Mar 2002 11:01:12 -0800 (PST)


On Tue, 12 Mar 2002, Keith Hodges wrote:

> My thoughts -- I was wondering whether, rather than returning from a
> context
> twice,  we could try and  use the  QuerySignal (resumable non-error
> exception) mechanism to return processing to the calling context, and
> then
> resume.

Well, there are various ways (including probably that one) that you could
implement coroutining instead of continuations.  This would work just fine
for Seaside until someone hits the back button on the browser, at which
point, if you don't have continuations, you're not going to be able to
handle any actions, because the context of that page doesn't exist any
more.  And I really don't think there's any way to get around that - if
you can't return twice from a context, you can't return twice from a
context.

Now, lots of web applications are crippled in the same way, and simply
forbid the use of the back button; you could certainly write a version of
Seaside for ST/X that had the same limitation (it would even be simpler,
since, for example, IAPageState would no longer be useful).  But at that
point I have to wonder what the compelling reason is for using ST/X
instead of Squeak.  If there still is one, I'll be happy to help you work
out what's involved in making such a modification.

Cheers,
Avi