You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@cocoon.apache.org by Rob Jellinghaus <ro...@unrealities.com> on 2002/04/10 21:30:11 UTC

Re: Continuation-enabled Rhino status (was: Re: [vote] Starting 2.1-dev)

At 10:29 AM 4/10/2002 -0700, Ovidiu Predescu wrote:
>Rhino has two ways of running JavaScript scripts. The first one is
>translating the script in a structure of internal objects, which are
>then "executed". The second approach, a lot faster that the first one,
>translates the JavaScript scripts in internal Java classes, which are
>compiled to bytecodes on-the-fly and executed as normal Java code.
>
>Adding support for continuations in the compiler mode is not possible,
>due to the impossibility to manipulate the Java stack frame.

This places a lower bound on the speed of any continuation-based Cocoon web 
application.

I would steer clear of using a non-compilable technology in any 
sufficiently large-scale web site.  Hence, this ower bound on the flow 
engine's speed may imply an upper bound on the scale of Cocoon deployments 
using the continuation-based flow engine.

It is also curious how this performance constraint is so at odds with 
Cocoon's general predilection to compile everything whenever possible, for 
maximum throughput.

It pains me to say all this, as I think continuations are elegant as hell 
and Ovidiu's work seems quite impressive, but I do not believe that 
continuations will become efficiently implementable in the JVM (or in 
JVM-based languages) anytime in the next few years.  Hence, I do not think 
that continuations should become the main focus of Cocoon's flow support, 
if Cocoon has scalability as a primary design goal.

Cheers,
Rob



---------------------------------------------------------------------
To unsubscribe, e-mail: cocoon-dev-unsubscribe@xml.apache.org
For additional commands, email: cocoon-dev-help@xml.apache.org


Re: Continuation-enabled Rhino status (was: Re: [vote] Starting 2.1-dev)

Posted by Rob Jellinghaus <ro...@unrealities.com>.
At 02:01 PM 4/10/2002 -0700, Ovidiu Predescu wrote:
>Perl, Python, PHP and lots of other interpreted languages out there
>are successfully used to drive very large Web sites. None of them
>compiles anything to C, they all interpret the scripts that describe
>the Web application.
>
>Some of these Web applications have tens of thousands of lines of
>code, all interpreted. I haven't noticed any problem accessing sites
>like Slashdot (Perl), Yahoo Maps! (Python), Yahoo Store! (Common
>Lisp), and many others.

All good points, and well made :-)

Cheers,
Rob



---------------------------------------------------------------------
To unsubscribe, e-mail: cocoon-dev-unsubscribe@xml.apache.org
For additional commands, email: cocoon-dev-help@xml.apache.org


Re: Continuation-enabled Rhino status (was: Re: [vote] Starting 2.1-dev)

Posted by Rob Jellinghaus <ro...@unrealities.com>.
At 11:30 AM 4/10/2002 -0800, Rob Jellinghaus wrote:
>At 10:29 AM 4/10/2002 -0700, Ovidiu Predescu wrote:
>>Adding support for continuations in the compiler mode is not possible,
>>due to the impossibility to manipulate the Java stack frame.
>
>This places a lower bound on the speed of any continuation-based Cocoon 
>web application.

Oops, I meant "upper bound" :-)

Cheers!
Rob



---------------------------------------------------------------------
To unsubscribe, e-mail: cocoon-dev-unsubscribe@xml.apache.org
For additional commands, email: cocoon-dev-help@xml.apache.org