Node.jar - Java port by Oracle

Showing 1-27 of 27 messages
Node.jar - Java port by Oracle Jonathan Buchanan 10/4/12 10:16 AM
I'm at JavaOne, for my sins, and I've been attending all the sessions related to Oracle's new JavaScript implementation in Java, called Nashorn.

What initially caught my eye was that they're also porting the Node.js APIs, module system etc. in a project called Node.jar. Nashorn itself is going to be open-source, but it sounds like it's hard to get a hold of Node.jar even if you work for Oracle, and there are no plans to open-source Node.jar, but it could be another deployment option in the future and another way to get at multi-threading.

These are what I can decipher from my scribbled notes:

https://insin-notes.readthedocs.org/en/latest/JavaOne2012/meet_nashorn_bof.html
https://insin-notes.readthedocs.org/en/latest/JavaOne2012/nashorn_node_jpa_persistence_bof.html

They at pains to point out they hadn't looked at any other implementations to keep the JavaScript engine "pure", but it sounds like the Node port is trying to reuse as much of the Node JS libs as possible and Node's tests.

Has the Node dev team been involved with or consulted about any of this stuff?

---
Jonny
Re: [nodejs] Node.jar - Java port by Oracle Isaac Schlueter 10/4/12 10:52 AM
Nope.  This is the first I'm hearing about it.

The great thing about an MIT license is that they really don't have to
bug us about this if they don't feel like it :)
> --
> Job Board: http://jobs.nodejs.org/
> Posting guidelines:
> https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
> You received this message because you are subscribed to the Google
> Groups "nodejs" group.
> To post to this group, send email to nod...@googlegroups.com
> To unsubscribe from this group, send email to
> nodejs+un...@googlegroups.com
> For more options, visit this group at
> http://groups.google.com/group/nodejs?hl=en?hl=en
Re: Node.jar - Java port by Oracle Bradley Meck 10/4/12 11:16 AM
As long as NPM works, since it uses Node's module loader apparently, I am sure some horrible but interesting bridges will be crossed on the NPM registry. Looking forward to it.
Re: Node.jar - Java port by Oracle Thomas Shinnick 10/4/12 11:39 AM
So, they've finally figured out how to do it...
  "Write once, run anywhere"   with Javascript
Re: [nodejs] Node.jar - Java port by Oracle Ben Noordhuis 10/4/12 7:06 PM
Very interesting, thanks for posting that. And no, we've not been consulted. :-)
Re: [nodejs] Node.jar - Java port by Oracle Jonathan Buchanan 10/4/12 8:52 PM
There's been an interesting thread I've been following throughout this (my first) JavaOne of "polyglot" - pretty much: "Java the language is way, waaay far from perfect: use whatever JVM language best suits the job/domain at hand." Obviously, there's been that "on the JVM" bent, but the message dynamic language guys have been selling is: "if you need middleware which already exists in a Java EE app server and there's a wrapper for <favourite dynamic language>, just *use* the <favourite dynamic language> wrapper." Other talks have gone further and pretty much said: "look: when you need to scale, just use whatever's best at the task at hand, doesn't matter what it's written in/runs on," at which many mental high-fives were given by myself and a a certain amount of confuzzled questions were asked.

The JRuby guys are way ahead on this front: Charles Nutter has had a bunch of great talks here, and from listening to the Oracle & JVM guys it sounds like he's been a key driver as an initial user of the JVM-specific details (invokeDynamic). He and Tom Enebo (another JRuby guy) had a packed talk where they did a great job of sellling dynamic languages in general and for build/testing tools in particular as an entry point. Given that Oracle have people working on a more efficient JavaScript implementation than what's standard in Java-land, and that they're working on a Node API implementation (a talk today about implementation details such as https://github.com/szegedi/dynalink was a programmer geeking-out-fest, as someone who's been stuck in webapps-land for too long), I guess this just is a bit of a heads-up.

(I should point out, FWIW, that I use (server-side) JavaScript and Python almost exclusively in my free time and Java/JVM/enterprisey stuff almost exclusively at work, so I'm currently a bit stoked (and drunk on free alcolhol, and overwhelmed by SF partially due to the former) about having attended days of talks which merge stuff I'm interested in personally and stuff I *have* to be interested in professionally)

Thanks,
Jonny.
Re: [nodejs] Node.jar - Java port by Oracle Rick Waldron 10/4/12 9:07 PM
So, is no one else nervous about the fact that Oracle owns the trademark "JavaScript", acquired along with Sun. If they develop a JavaScript implementation it gives them grounds to "defend the mark". 

-Rick

--
Job Board: http://jobs.nodejs.org/
Posting guidelines: https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
You received this message because you are subscribed to the Google
Groups "nodejs" group.
To post to this group, send email to nod...@googlegroups.com
To unsubscribe from this group, send email to
nodejs+un...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/nodejs?hl=en?hl=en

Re: [nodejs] Node.jar - Java port by Oracle Mark Hahn 10/4/12 9:19 PM
the fact that Oracle owns the trademark "JavaScript", acquired along with Sun. 

How did sun get it?
Re: [nodejs] Node.jar - Java port by Oracle Arunoda Susiripala 10/4/12 9:48 PM
I think they took it from Netscape.  May be Netscape sold it when they are winding up.
> --
> Job Board: http://jobs.nodejs.org/
> Posting guidelines: https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
> You received this message because you are subscribed to the Google
> Groups "nodejs" group.
> To post to this group, send email to nod...@googlegroups.com
> To unsubscribe from this group, send email to
> nodejs+un...@googlegroups.com
> For more options, visit this group at
> http://groups.google.com/group/nodejs?hl=en?hl=en
>

--
Arunoda Susiripala


Re: [nodejs] Node.jar - Java port by Oracle Thomas Shinnick 10/4/12 10:07 PM
JenkinsScript ?  (Oracle will like that I'm sure - they liked 'Jenkins' the last time too)
Re: [nodejs] Node.jar - Java port by Oracle Rick Waldron 10/4/12 10:11 PM
I'm not sure how it transferred, but when the dust settled (over 12 years ago) Sun owned the Java and JavaScript trademarks.

-Rick

Re: [nodejs] Node.jar - Java port by Oracle Karl Tiedt 10/4/12 10:15 PM
Oracle decided to try and fight Googles use of Davlik on Android...
and because it was a sudden change in the stance that Sun took on the
whole situation, the judge basically laughed it off. I would suspect
something similar would happen with JavaScript.

-Karl Tiedt
Re: [nodejs] Node.jar - Java port by Oracle Scott González 10/5/12 5:18 AM
On Fri, Oct 5, 2012 at 12:07 AM, Rick Waldron <waldro...@gmail.com> wrote:
So, is no one else nervous about the fact that Oracle owns the trademark "JavaScript", acquired along with Sun. If they develop a JavaScript implementation it gives them grounds to "defend the mark".

You can't really defend a trademark after not defending it for over a decade. Even with a registered trademark, you need to be able to show a history of brand protection, which is clearly not possible for JavaScript.
Re: [nodejs] Node.jar - Java port by Oracle Dan Bornstein 10/5/12 9:00 AM
On Thu, Oct 4, 2012 at 10:15 PM, Karl Tiedt <kti...@gmail.com> wrote:
> Oracle decided to try and fight Googles use of [Dalvik] on Android...
> and because it was a sudden change in the stance that Sun took on the
> whole situation, the judge basically laughed it off. I would suspect
> something similar would happen with JavaScript.

I hesitate to say this, lest I sound like an actual expert (and also
because it's very nearly off-topic), but I don't think what you say
here really captures how it all went down. If (any of) you want to dig
into details, Groklaw's <http://www.groklaw.net/> coverage of the case
is both extensive and (in my opinion) objective.

Cheers,

-dan
Re: Node.jar - Java port by Oracle Johnny Honestly 10/5/12 1:03 PM
I never liked the name Javascript anyway, b/c of the Java confusion and because the coffee fetish thing is, IMHO, below the awesomeness of the language.

Really tho, all I care is that they fork NPM so it doesn't get clogged with java modules.
Re: [nodejs] Re: Node.jar - Java port by Oracle Mikeal Rogers 10/6/12 6:44 AM
I think the point would be that modules written in JavaScript run in Node.jar, and that these people would write JavaScript modules, which would mean they are still compatible with the same registry without needing to fork. 


--
Job Board: http://jobs.nodejs.org/
Posting guidelines: https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
You received this message because you are subscribed to the Google
Groups "nodejs" group.
To post to this group, send email to nod...@googlegroups.com
To unsubscribe from this group, send email to
nodejs+un...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/nodejs?hl=en?hl=en

Re: [nodejs] Node.jar - Java port by Oracle Patrick Mueller 10/8/12 3:10 PM
On 10/4/12 1:16 PM, Jonathan Buchanan wrote:
> I'm at JavaOne, for my sins, and I've been attending all the sessions
> related to Oracle's new JavaScript implementation in Java, called Nashorn.
>
> What initially caught my eye was that they're also porting the Node.js
> APIs, module system etc. in a project called Node.jar.
For folks interested in "node on Java", there's a project out there
called SprintStack which - as near as I can tell - also aims to provide
"node" on Java.

     http://sprintstack.com/

I have no experience with it, just happened to notice it a while back.
Re: [nodejs] Node.jar - Java port by Oracle Stewart McKinney 10/8/12 5:21 PM
I'm just curious as to why having Node run on top of the Java run time is better than say, vanilla C++ compiled Node running naively. Doesn't it run on pretty much every popular platform now, anyway?

If you are going to build out new services in Node.js, why not simply create auxiliary architecture to support it? Service layers don't need to be physically integrated, although I can see the argument from an
"gee this is gonna be easier to convince my IT department to do" perspective.

To me it just seems like an interesting exercise, not anything truly practical, although I don't mind being educated in the matter.



--
Job Board: http://jobs.nodejs.org/
Posting guidelines: https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
You received this message because you are subscribed to the Google
Groups "nodejs" group.
To post to this group, send email to nod...@googlegroups.com
To unsubscribe from this group, send email to
nodejs+un...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/nodejs?hl=en?hl=en

Re: [nodejs] Node.jar - Java port by Oracle Stewart McKinney 10/8/12 5:21 PM
*natively. Christ.
Re: [nodejs] Node.jar - Java port by Oracle Ben Noordhuis 10/8/12 6:03 PM
On Tue, Oct 9, 2012 at 2:21 AM, Stewart Mckinney <lord...@gmail.com> wrote:
> I'm just curious as to why having Node run on top of the Java run time is
> better than say, vanilla C++ compiled Node running naively. Doesn't it run
> on pretty much every popular platform now, anyway?

The major ones, yes. But there are some high margin, low volume
architectures like POWER and S/390 that V8 doesn't support (and hence
node.js) but the JVM does. Think AIX, mainframes, etc.

There has been some corporate interest in running node on such
architectures but the time and money to get (and keep) it ported isn't
worth it. node.jar could be a viable alternative.
Re: [nodejs] Node.jar - Java port by Oracle Rick Waldron 10/8/12 10:15 PM
This strikes me as the sort of shitty compatibility fragmentation that browsers suffer from. What happens when "node.jar" falls behind in supporting new features? Bug fixes?

-Rick

--
You received this message because you are subscribed to the Google
Groups "nodejs" group.
To post to this group, send email to nod...@googlegroups.com
To unsubscribe from this group, send email to
For more options, visit this group at

Re: [nodejs] Node.jar - Java port by Oracle cole gillespie 10/8/12 10:22 PM
Isnt the goal of node to eventually be done with "new features" / "bugs" ? =)
Re: [nodejs] Node.jar - Java port by Oracle Isaac Schlueter 10/9/12 9:15 AM
This is just a natural part of being a popular programming platform.
It seems pretty similar to me to something like JRuby or Jython.
Re: [nodejs] Re: Node.jar - Java port by Oracle shawn wilson 10/9/12 1:25 PM


On Oct 5, 2012 4:03 PM, "Johnny Honestly" <mostmo...@gmail.com> wrote:
>
> I never liked the name Javascript anyway, b/c of the Java confusion and because the coffee fetish thing is, IMHO, below the awesomeness of the language.
>

LiveScript v.02 ftw

Re: [nodejs] Node.jar - Java port by Oracle shawn wilson 10/9/12 1:25 PM

It would also be interesting to have a full node stack on android... and I hear ARM is discontinuing their native Java support, but if I'm wrong, native node on something like a cheap NXP chip would be cool too. I doubt this just because I'm sure there are requirements in Java I skimmed over in the headlines, but just a thought / hope ;)

--
Job Board: http://jobs.nodejs.org/
Posting guidelines: https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
You received this message because you are subscribed to the Google
Groups "nodejs" group.
To post to this group, send email to nod...@googlegroups.com
To unsubscribe from this group, send email to
nodejs+un...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/nodejs?hl=en?hl=en
Re: [nodejs] Node.jar - Java port by Oracle cpurdy 10/19/12 8:46 AM
The Oracle JVM is now available on ARM. (I'm not sure if the ARM port is open sourced as part of OpenJDK or not.) At JavaOne this year, Oracle announced Java for Embedded; a significant amount of the customers and partners in this area are using ARM. Among other things, Java for Embedded supports the Java EE 6 standard, which includes lightweight web profile development support (using the Glassfish server -- see http://glassfish.org).

Nashorn is built on top of the JVM, and thus will run on any compliant JVM implementation on any platform. It should be pretty easy to run Node on ARM using Nashorn. And of course, V8 can also run on ARM.

There are still a number of micro-benchmarks in which Nashorn trails V8, but it is able to take advantage of the Hotspot dynamic native compilation (using runtime profiling to hyper-optimize hot spots within the code), which should make the overall performance significantly better. The JVM is also designed to take advantage of multi-core and multi-threaded architectures, which is an area that ARM is rapidly growing into.

Peace,

Cameron Purdy | Oracle
(Working for Oracle, but speaking as an individual and writing my own personal opinions.)



On Tuesday, October 9, 2012 4:25:46 PM UTC-4, shawn wilson wrote:

It would also be interesting to have a full node stack on android... and I hear ARM is discontinuing their native Java support, but if I'm wrong, native node on something like a cheap NXP chip would be cool too. I doubt this just because I'm sure there are requirements in Java I skimmed over in the headlines, but just a thought / hope ;)

On Oct 8, 2012 9:03 PM, "Ben Noordhuis" <in...@bnoordhuis.nl> wrote:
On Tue, Oct 9, 2012 at 2:21 AM, Stewart Mckinney <lord...@gmail.com> wrote:
> I'm just curious as to why having Node run on top of the Java run time is
> better than say, vanilla C++ compiled Node running naively. Doesn't it run
> on pretty much every popular platform now, anyway?

The major ones, yes. But there are some high margin, low volume
architectures like POWER and S/390 that V8 doesn't support (and hence
node.js) but the JVM does. Think AIX, mainframes, etc.

There has been some corporate interest in running node on such
architectures but the time and money to get (and keep) it ported isn't
worth it. node.jar could be a viable alternative.

--
Job Board: http://jobs.nodejs.org/
Posting guidelines: https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines
You received this message because you are subscribed to the Google
Groups "nodejs" group.
To post to this group, send email to nod...@googlegroups.com
To unsubscribe from this group, send email to
nodejs+un...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/nodejs?hl=en?hl=en
Re: [nodejs] Node.jar - Java port by Oracle cpurdy 10/19/12 10:37 AM
For over a decade now, the JVM has supported the most (by a large margin) languages of any multi-language runtime. I remember there were well over a hundred different languages implemented on the JVM, including all the common ones and a few you've probably never heard of. (See http://www.is-research.de/info/vmlanguages/ for page after page of language implementations on the JVM.)

The amazing thing -- in the case of dynamic languages -- is that these languages were running on the JVM without any real help from the JVM itself. This resulted in some combination of (a) additional complexity for the language implementer and (b) far less than optimal performance.

Over the several years since Oracle acquired Sun, Oracle has been investing (fairly heavily, considering that there is no "product for sale" in this area) in making the JVM much more friendly for dynamic languages. The example most commonly cited is the "new" invokedynamic byte code, but there's also quite a lot of work going on in the Java libraries and in the JVM itself to make other languages easier to implement and to make their performance significantly better.

The Nashorn project represents some of the early fruit of this work, for example by making extensive use of call-site capabilities with invokedynamic. However, projects like jRuby and Nashorn that have taken advantage of the early JVM work for dynamic language support have also given rise to an additional wave of ideas on how to optimize the JVM further, so there's already work on a "v2" of these ideas (e.g. full support for inlining of dynamic invokes, which is something I don't even understand at this point).

It's important to understand that there is no single use case for the JVM, just as there is no single use case for Linux. Dynamic languages are one constituency that are pushing the boundaries of performance optimizations on the JVM, but that is just one facet of the investments being made in the Java platform. Just as with Node, the OpenJDK development is done in open source and involves many different organizations and individuals, and fortunately is not limited by the imagination and resources of a single company.

One benefit that we believe is inevitable from this work is the ability of a platform -- like Node -- to be able to run literally as part of any Java environment, including as part of a full Java Enterprise server, meaning that Node could take advantage of the various "enterprisey" services of that environment, and vice-versa. I think that it will be quite interesting to see what emerges.

Peace,

Cameron Purdy | Oracle
(Working at Oracle, but posting my own opinions as an individual.)


On Thursday, October 4, 2012 11:52:44 PM UTC-4, Jonathan Buchanan wrote:
There's been an interesting thread I've been following throughout this (my first) JavaOne of "polyglot" - pretty much: "Java the language is way, waaay far from perfect: use whatever JVM language best suits the job/domain at hand." Obviously, there's been that "on the JVM" bent, but the message dynamic language guys have been selling is: "if you need middleware which already exists in a Java EE app server and there's a wrapper for <favourite dynamic language>, just *use* the <favourite dynamic language> wrapper." Other talks have gone further and pretty much said: "look: when you need to scale, just use whatever's best at the task at hand, doesn't matter what it's written in/runs on," at which many mental high-fives were given by myself and a a certain amount of confuzzled questions were asked.

The JRuby guys are way ahead on this front: Charles Nutter has had a bunch of great talks here, and from listening to the Oracle & JVM guys it sounds like he's been a key driver as an initial user of the JVM-specific details (invokeDynamic). He and Tom Enebo (another JRuby guy) had a packed talk where they did a great job of sellling dynamic languages in general and for build/testing tools in particular as an entry point. Given that Oracle have people working on a more efficient JavaScript implementation than what's standard in Java-land, and that they're working on a Node API implementation (a talk today about implementation details such as https://github.com/szegedi/dynalink was a programmer geeking-out-fest, as someone who's been stuck in webapps-land for too long), I guess this just is a bit of a heads-up.

(I should point out, FWIW, that I use (server-side) JavaScript and Python almost exclusively in my free time and Java/JVM/enterprisey stuff almost exclusively at work, so I'm currently a bit stoked (and drunk on free alcolhol, and overwhelmed by SF partially due to the former) about having attended days of talks which merge stuff I'm interested in personally and stuff I *have* to be interested in professionally)

Thanks,
Jonny.

On 4 October 2012 19:05, Ben Noordhuis <in...@bnoordhuis.nl> wrote:
On Thu, Oct 4, 2012 at 7:16 PM, Jonathan Buchanan
<jonathan...@gmail.com> wrote:
> I'm at JavaOne, for my sins, and I've been attending all the sessions
> related to Oracle's new JavaScript implementation in Java, called Nashorn.
>
> What initially caught my eye was that they're also porting the Node.js APIs,
> module system etc. in a project called Node.jar. Nashorn itself is going to
> be open-source, but it sounds like it's hard to get a hold of Node.jar even
> if you work for Oracle, and there are no plans to open-source Node.jar, but
> it could be another deployment option in the future and another way to get
> at multi-threading.
>
> These are what I can decipher from my scribbled notes:
>
> https://insin-notes.readthedocs.org/en/latest/JavaOne2012/meet_nashorn_bof.html
>
> They at pains to point out they hadn't looked at any other implementations
> to keep the JavaScript engine "pure", but it sounds like the Node port is
> trying to reuse as much of the Node JS libs as possible and Node's tests.
>
> Has the Node dev team been involved with or consulted about any of this
> stuff?

Very interesting, thanks for posting that. And no, we've not been consulted. :-)

More topics »