Three cheers. 

Sent from Jim's iPhone

> On Oct 14, 2013, at 2:22 AM, Tal Liron <[email protected]> wrote:
> 
> More good news: Diligence now also works on Nashorn. It is a powerful, 
> scalable MonogDB-driven web framework:
> 
> http://threecrickets.com/diligence/
> 
> MongoVision, an Ext-JS-based front end for MongoDB, now also runs on Nashorn:
> 
> http://code.google.com/p/mongo-vision/
> 
> To allow for this involved refactoring the MongoDB Rhino driver to now be a 
> MongoDB "JVM" driver that can support various JVM languages, with the same 
> for the extensible Rhino JSON dependency. It all works directly with Nashorn 
> internal objects for high-performance BSON/JSON conversions. Here are the 
> newly refactored projects, now with Nashorn support:
> 
> http://code.google.com/p/mongodb-jvm/
> http://code.google.com/p/json-jvm/
> 
> So, now the entire Three Crickets stack can be run on either Nashorn or Rhino.
> 
> Phew! It's been a long week. And now March 2014 can't come soon enough.
> 
>> On 10/10/2013 01:33 AM, Tal Liron wrote:
>> After reporting various bugs and complaints on the list, I have some good 
>> news for a change. :)
>> 
>> The complete Prudence stack, which includes a *lot* of JavaScript code 
>> developed for years to work in Rhino, now runs perfectly fine on Nashorn. 
>> (The exact same code base also works in Rhino.)
>> 
>> Prudence is a powerful REST and web platform. With it, you can use 
>> JavaScript (as well as many other JVM languages) to write RESTful resources 
>> and dynamically generated, cached web pages.
>> 
>> I hope this will allow you to test Nashorn performance in server-side 
>> environments, and to compare it with Rhino in this respect, too.
>> 
>> Nashorn is now a fully supported language in Scripturian (an alternative to 
>> JSR-223), so any other applications that use Scripturian can also now 
>> leverage Nashorn. I should point out that Scripturian also works with the 
>> nashorn-backport project, so the whole stack can work on JVM 7.
>> 
>> I did need some hacks:
>> 
>> 1. I patched Nashorn for the "NPE in DebugLogger.levelAbove" bug I reported.
>> 2. I patched mozilla_compat to support multiple arguments in importClass 
>> (again, as with the bug I reported).
>> 3. I had to implement a rather ugly hack in Sincerity to deal with Nashorn's 
>> current inability to coerce string arrays (I actually do a 
>> string.split(",")...), and also moved a static method to become non-static 
>> for the sake of Nashorn's strictness. Sigh.
>> 
>> (And also some other small JavaScript changes that work fine in Rhino, too.)
>> 
>> I would also love for Diligence to run on Nashorn: Diligence is a full-blown 
>> server-side JavaScript web framework built on Prudence and MongoDB. However, 
>> this would require more work, because the JVM/JavaScript MongoDB driver I 
>> wrote is currently Rhino-specific. I will update you in the future on this 
>> progress, as it would allow for even more avenues for testing.
>> 
>> Keep up the good work! And hopefully listen to my advice on how to move 
>> Nashorn forward: I speak from quite a bit of experience with dynamic 
>> languages on the JVM, and JavaScript especially.
>> 
>> -Tal
> 

Reply via email to