News for hackers. Stuff that matters.
Re:GraalVM: Run Programs Faster Anywhere by oneplane on Tuesday April 17, 2018 @06:21PM (#16862814)
Keep in mind that while this is nice technology, it's Oracle-based, split in CE/EE (which in itself is not a problem, but CE doesn't run on macOS), and they will find a way to screw you over at some point in the future regardless of what you do, use or choose.
Re:GraalVM: Run Programs Faster Anywhere by grashalm on Tuesday April 17, 2018 @06:38PM (#16862913)
The reason why we don't build CE on Mac OS is purely technical. Its because there was no OpenJDK 8 build for Mac that we could use. We hope we can change that soon. OpenJDK builds got a lot more regular with Java version >= 10.

Currently we have the same APIs for CE and EE. So applications are easily portable between those two. We have no plans to change this.

But. You don't have to take our word for it. CE is open source and you may build, extend and maintain it yourself if you want to.

Re:GraalVM: Run Programs Faster Anywhere by rch on Tuesday April 17, 2018 @07:02PM (#16863063)
> CE is open source

GPL.

No comment beyond that but I thought I might save someone a few clicks.

Re:GraalVM: Run Programs Faster Anywhere by grashalm on Tuesday April 17, 2018 @07:08PM (#16863101)
I posted all the license below in a comment.
Re:GraalVM: Run Programs Faster Anywhere by bitL on Tuesday April 17, 2018 @06:53PM (#16863008)
Is it Oracle Oracle, or Oracle SUN product? BTW, it sounds pretty cool, I am wondering how do you convert between complex datatypes while passing parameters between different languages and not losing much speed with it?
Re:GraalVM: Run Programs Faster Anywhere by grashalm on Tuesday April 17, 2018 @07:05PM (#16863079)
We don't convert. We have defined a contract that all languages can work with (quite a challenge and still evolving).

From the website:

> In order to provide foreign polyglot values meaning in languages we have developed the so-called polyglot interoperability protocol. This interoperability protocol consists of a set of standardized messages that every Graal language implements and uses for foreign polyglot values. The protocol allows GraalVM to support interoperability between any combination of languages without requiring them to know of each other.

This technique is based on some research we did in 2015: http://chrisseaton.com/rubytruffle/dls15-interop/dls15-inter...

Re:GraalVM: Run Programs Faster Anywhere by BrandiATMuhkuh on Wednesday April 18, 2018 @08:19AM (#16866723)
Coincidentally I met the creators last week and it's actually developed at the Johannes Kepler University in Linz/Austria. They have a oracle sponsored lab working on compilers etc.
Re:GraalVM: Run Programs Faster Anywhere by weberc2 on Tuesday April 17, 2018 @07:04PM (#16863075)
Me too. I’m thinking there must be some library that knows how to marshal between object representations. Surely Graal doesn’t have universal objects that suit every language.
Re:GraalVM: Run Programs Faster Anywhere by miguro on Tuesday April 17, 2018 @07:17PM (#16863154)
That's the thing - there is no marshaling. The objects are passed between the languages as pointers under-the-hood. There is a standard way of invoking methods/functions on those pointers, that works across all languages.
Re:GraalVM: Run Programs Faster Anywhere by chrisseaton on Tuesday April 17, 2018 @09:32PM (#16863941)
To give you an idea of how deep this goes - you can pass a Ruby object to a C function and the C function can read and write it as if it was a pointer to a structure.

http://chrisseaton.com/truffleruby/structs/

Re:GraalVM: Run Programs Faster Anywhere by mike_hearn on Wednesday April 18, 2018 @03:42AM (#16865491)
It has a form of universal object used for scripting languages (but not more static languages like Java or C++). But using it is not required, it's just a convenience to make implementing languages easier.

What it actually provides is a form of "universal abstract syntax tree". So if a C program wants to access a JavaScript object by writing "a->b = c" then the dereference is turned into a snippet of JavaScript code (in effect) and inlined right into the C function.

Re:GraalVM: Run Programs Faster Anywhere by pjmlp on Wednesday April 18, 2018 @01:17AM (#16864825)
Like Google, Microsoft, Apple dropping tech, or replacing it with something else, just because.

Oracle has done lots of nice things for Java, some of them with uncertain future or even tabu at Sun, like Graal's percusor MaximeVM or AOT compilation.

It might not be a company loved by FOSS, but other than IBM there wasn't anyone else caring that much for Java's fate, Google specially did not even bothered.

So I appreciate every improvement Oracle does to Java.

Re:GraalVM: Run Programs Faster Anywhere by ploxiln on Wednesday April 18, 2018 @04:36AM (#16865718)
Comparing Oracle to Google is like comparing China gov to US gov. They both do bad things, but they are not remotely the same, the difference is well over 10x.

Recent story about Oracle exercising copyright over the word "javascript": https://news.ycombinator.com/item?id=16862949

Remember when Oracle sued Google for re-implementing the Java standard library.

Remember the OpenOffice -> LibreOffice thing. Remember the Hudson -> Jenkins thing.

There's the enterprise sales/licensing tactics which I guess is not very familiar or visceral for most of us, me included. But I'm sure there's more I'm forgetting ...

Re:GraalVM: Run Programs Faster Anywhere by pjmlp on Wednesday April 18, 2018 @05:17AM (#16865870)
> Comparing Oracle to Google is like comparing China gov to US gov. They both do bad things, but they are not remotely the same, the difference is well over 10x

Ask that to the civil victims of drone attacks and Apache pilots having fun with civil convoys, as proven by many available video footage.

> Recent story about Oracle exercising copyright over the word "javascript": https://news.ycombinator.com/item?id=16862949

It was a decision done by Apple, Oracle did not move a finger.

"As you are likely aware, Oracle owns US Trademark Registration No. 2416017 for JAVASCRIPT. The seller of this iTunes app prominently displays JAVASCRIPT without authorization from our client. The unauthorized display of our client's intellectual property is likely to cause consumers encountering this app to mistakenly believe that it emanates from, or is provided under a license from, Oracle. Use of our client's trademark in such a manner constitutes trademark infringement in violation of the Lanham Act. 15 U.S.C. § 1125(a)(1)(A). In order to prevent further consumer confusion and infringement of our client's intellectual property rights, we request that you immediately disable access to this app. We look forward to your confirmation that you have complied with this request."

> Remember when Oracle sued Google for re-implementing the Java standard library.

Not only do I remember, I stand by it.

"James Gosling: Oracle vs Google"

https://www.youtube.com/watch?v=JQ7xVO9lqD0

> Remember the OpenOffice -> LibreOffice thing. Remember the Hudson -> Jenkins thing.

I do, other companies did similar things without getting the half the hate Oracle does.

Many people here even would probably like to work for those companies.

Re:GraalVM: Run Programs Faster Anywhere by gcbirzan on Wednesday April 18, 2018 @07:28AM (#16866403)
> It was a decision done by Apple, Oracle did not move a finger.

That's not true. If you read the text, the request comes from Oracle's lawyers. "our client's intellectual property":

> "As you are likely aware, Oracle owns US Trademark Registration No. 2416017 for JAVASCRIPT. The seller of this iTunes app prominently displays JAVASCRIPT without authorization from our client. The unauthorized display of our client's intellectual property is likely to cause consumers encountering this app to mistakenly believe that it emanates from, or is provided under a license from, Oracle. Use of our client's trademark in such a manner constitutes trademark infringement in violation of the Lanham Act. 15 U.S.C. § 1125(a)(1)(A). In order to prevent further consumer confusion and infringement of our client's intellectual property rights, we request that you immediately disable access to this app. We look forward to your confirmation that you have complied with this request."

Re:GraalVM: Run Programs Faster Anywhere by aepiepaey on Wednesday April 18, 2018 @07:01AM (#16866270)
What? Oracle definitely did move a finger. Maybe not directly (but through a third party).

The quote you posted was clearly sent to Apple by lawyers acting on Oracle's behalf, which was then forwarded to the developer by Apple.

Re:GraalVM: Run Programs Faster Anywhere by sah2ed on Wednesday April 18, 2018 @07:07AM (#16866291)
The statement you quoted regarding the JavaScript trademark infringement reads like something a lawyer commissioned to represent Oracle would write, rather than Apple being proactive in enforcing Oracle's trademark.

I base this on the author's repeated use of the phrase "our client's IP".

Re:GraalVM: Run Programs Faster Anywhere by ksec on Wednesday April 18, 2018 @06:18AM (#16866120)
Thanks for the clip. Offering some new perspective into it.
Re:GraalVM: Run Programs Faster Anywhere by sametmax on Wednesday April 18, 2018 @03:24AM (#16865387)
Your point being ?

We are all aware of the danger of using techs from those companies.

Re:GraalVM: Run Programs Faster Anywhere by miguro on Wednesday April 18, 2018 @05:14AM (#16865861)
And yet, we use techs from those companies on a daily basis. JVM especially. GraalVM is the next step in JVM's evolution. It's not hard to imagine that this will motivate other JVM vendors to add serious support for other languages.
Re:GraalVM: Run Programs Faster Anywhere by sametmax on Wednesday April 18, 2018 @05:23AM (#16865886)
Very few people make conscious choices to build their life or society.
Re:GraalVM: Run Programs Faster Anywhere by jacobush on Wednesday April 18, 2018 @02:45AM (#16865199)
CE edition with Mac and Windows builds is a must for me to consider it. I realize I am not a prospective Oracle customer, but I would have been a part of the common people making it more popular overall.

The idea of interoperating languages is great though. From the other polar end of the corporate world, we have .NET and its open source versions, and I hear IronPython, Javascript etc work pretty well in the .NET ecosystem. Not my cup of tea though.

Re:GraalVM: Run Programs Faster Anywhere by white-flame on Tuesday April 17, 2018 @10:48PM (#16864229)
I am curious how GPL2 will intersect with "You can't reimplement our API in your own project."
Re:GraalVM: Run Programs Faster Anywhere by jokr004 on Tuesday April 17, 2018 @07:24PM (#16863212)
Oh come on, I'm no fan of Oracle but this is some FUD nonesense..
Re:GraalVM: Run Programs Faster Anywhere by oneplane on Tuesday April 17, 2018 @09:48PM (#16863993)
Well, you may have a different experience, but for me and my companies (current/prev) it wasn't a lot of fun working with Oracle.

It's not that all the stuff is bad or that all the 'free' things turn sour, most of the things are technologically sound, but there is just so much lawyering, licensing and IP fighting that takes all the joy out of life. This isn't unique to Oracle, but not even IBM is as passive-agressive as their non-tech people and documents are.

Re:GraalVM: Run Programs Faster Anywhere by thiagocsf on Wednesday April 18, 2018 @01:35AM (#16864917)
I think it’s a legitimate licensing concern.

I’m surprised you called it FUD, given the high-profile case against Android (google).

I was about to recommend we try it at my company and gave up as soon as I read “Oracle” in the company name.

Call it FUD if you want but Oracle does have a damaged reputation.

Re:GraalVM: Run Programs Faster Anywhere by pjmlp on Wednesday April 18, 2018 @03:07AM (#16865298)
It happens when companies don't behave as they should, and others lack the money to enforce how things should be.

"James Gosling: Oracle vs Google"

https://www.youtube.com/watch?v=JQ7xVO9lqD0

Re:GraalVM: Run Programs Faster Anywhere by madmulita on Wednesday April 18, 2018 @11:33AM (#16868175)
I don't understand the point of the clip. He says that the code was similar to Sun's, but clearly admits that, not being involved with the trial, he didn't get to see Google's code.
Re:GraalVM: Run Programs Faster Anywhere by realusername on Wednesday April 18, 2018 @12:01AM (#16864516)
Oracle has an extensive history of screwing developers and companies with IP laws, being suspicious of projects coming from Oracle is only a valid reaction on the history of the company.