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 >
