Yes i have seen Ben's effort.  Fantastic work.   He has proved how 
powerful CFML is and what you can do even from just a CFC level.  There 
need to 100 more Ben's pushing the envelope on what CFML can do.  I 
think people (non-CFML) appreciate the true power they have with it.


The short answer -- the CFJS is a much tighter integration to CFML.

I am presently not using the JSR-223 (a JSR i was on) as it doesn't 
actually provide me with deep enough hooks into the Rhino engine that I 
require.   In addition the Rhino implementation shipped with JDK is a 
little older and heavily modified to work with the JDK.   The Rhino 
chaps recommend not using it if you are doing anything serious with it.

By providing a deep integration, we can be a lot smarter with the 
caching of the compiled Javascript and not have the overhead associated 
with compiling it everytime you request it.

I've modified some bits of the core Rhino engine to make the function 
and method lookup quicker when dealing with our OpenBD space.   I am 
keeping a note of all changes and keeping uptodate with the official CVS 
branch.   Other changes include the marshalling of data in and out of 
the Javascript engine and CFML.   I've modified it to be a very late 
binding, where as the default one, doesn't isn't.   I have also made 
changes so it can happily co-exist with any other implementation that 
the JVM may be running with at the time --- we're completely isolated.

The changes I have also made are with a eye when the Google GAE and 
OpenBD branches merge in the near future, so running Javascript on the 
server-side in the cloud doesn't become a bug-bear.   I fully intend 
CFSCRIPT/CFJS to be first class citizens within OpenBD with as little 
overhead as possible.

I have started to use CFJS in a client project already, and already i am 
feeling very at home using Javascript within my CFCs.   Hoping to get 
the last wee bits finished off in the next couple of days to bring it 
fully up to speed.

Hope this addresses your question.

Sean Corfield wrote:
> Have you seen Ben Nadel's blog post about running server-side
> JavaScript using Barney's CFGroovy project?
>
> http://www.bennadel.com/index.cfm?dax=blog:1766.view
>
> On the surface, this looks similar - so I'd be interested to hear
> about the differences in approach between what you're doing with CFJS
> and leveraging the JSR-223 stuff (or is that how you're doing it?).

-- 
Open BlueDragon Public Mailing List
 http://www.openbluedragon.org/   http://twitter.com/OpenBlueDragon
 mailing list - http://groups.google.com/group/openbd?hl=en

 !! save a network - please trim replies before posting !!

Reply via email to