[Seaside-dev] Re: thoughts on partial continuations

Dale Henrichs dale.henrichs at gemstone.com
Wed Feb 4 18:10:57 UTC 2009


----- "Julian Fitzell" <jfitzell at gmail.com> wrote:

| And on a related note (not to distract from the original question), I don't
| think WAPartialContinuation is as flexible as I would like; it's not quite
| the power tool it could be. I'd like to be able to specify whether or not to
| unwind to the marker (or to a different marker) when evaluating. I also
| think it would be nice to be able to have an interface for evaluating and
| creating where you can specify the context directly. The version that takes
| a compiled method marker could be implemented on top of that.
| 
| I know Dale has just got all his partial continuation tests passing. Will
| your implementation allow some more flexibility here Dale or is that a big
| pain?
| 
| Julian
| 

The current GemStone implementation uses stack-frame indexes:
  1) create partial by copying frames x to Y
  2) install partial at frame index z

GemStone/S doesn't currently have a #thisContext, so determining which frame you are interested in can be an interesting problem - using a method as a marker makes it relatively straightforward to calculate the stack frame index. Without #thisContext, I think that we can still come up with functional alternatives without requiring changes to the primitives.

I've talked this over with Allen and for 3.0 we can introduce #thisContext, which will give us the ability to easily identify a specific frame on the stack.

So in the end, I think that we can handle whatever you throw at us without it being a _big_ pain:)

Dale


More information about the seaside-dev mailing list