Hi Sylvain,
Sylvain Wallez wrote:
> Christopher Oliver wrote:
>
> >Hi Ivelin,
> >
> >Actually I believe it is possible to have continuations in pure Java --
> >using bytecode rewriting -- however this approach is quite intrusive and its
> >effect on performance and code-size is not insignificant (see:
> >http://www.cs.kuleuven.ac.be/~tim/MOS/brakes.html). Nevertheless the
> >performance of such instrumented code would likely still be significantly
> >faster than interpreted Rhino. I think it would be interesting to prototype
> >such an approach. If someone is interested in doing this for Cocoon, I
> >suggest they contact the authors of Brakes and see if they might be
> >interested in contributing their code to Apache. Given that I think it would
> >be fairly straightforward to set up a pure Java flow layer similar to what
> >Ovidiu has done with JavaScript.
> >
> >
>
> Exactly my thoughts. I studied a bit what's done in Brakes and IMHO what
> brings complexity here is that a thread can be suspended/resumed at any
> point of its execution, and I believe continuations are easier to
> implement since they are suspended and resumed in well-kown places.
Unfortunately, I don't think the complexity is actually any less. Although the
continuation may captured at a well known point, e.g. "sendPage", the "sendPage"
function can be called from anywhere and the calling stack frames need to be
saved as well.
Regards,
Chris
---------------------------------------------------------------------
To unsubscribe, e-mail: cocoon-dev-unsubscribe@xml.apache.org
For additional commands, email: cocoon-dev-help@xml.apache.org