Live data from Hacker News

GraalVM: Run Programs Faster Anywhere

graalvm.org

101–110 of 218 posts

Re: GraalVM: Run Programs Faster Anywhere

#101
post #98

Graal dev here. If you want to checkout all the sources/licenses of GraalVM CE. They are here: Graal: https://github.com/oracle/graal (GPLv2 with CPE) JavaScript with Node Integration: https://github.com/graalvm/graaljs (UPL - BSD license) Ruby: https://github.com/oracle/truffleruby (EPL, GPLv2, LGPL) R: https://github.com/oracle/fastr (GPLv2) Python: https://github.com/graalvm/graalpython (UPL - BSD license) LLVM/Su…

How would I go about creating a native image for a gem I've installed? I can't seem to find the documentation for this. Or have I misunderstood this totally? I thought I could do something like ruby script -> graal ruby --> jvm bytecode --> native image Update:: Doesn't look like I read it wrong - from this reddit comment[1] from 3months ago Ahh, I think there's some confusion here. What we do with the SVM is ahead o…

> There's likely no reason we couldn't compile Ruby applications into a static binary.

I think this was a theoretical observation.

What is more likely in the near future is to be able to initialise your Ruby gem at compile time, so when you start your application it is already required and you can start execution as if all your require statements had already run.

Re: GraalVM: Run Programs Faster Anywhere

#102
post #7

Am I correct in reading the license in Github that this is all GPL? Albeit GPL2 but still not some Oracle proprietary license. "One VM to rule them all" reminds me of Parrot VM (for Perl 6). Looks like development slowed down a year or two ago. Back then, it got me excited as it looked like the "open source community" alternative to "Big Corporate Java". https://en.wikipedia.org/wiki/Parrot_virtual_machine

Is anyone else so leery of Oracle's lawyers you want nothing to do with this? Even if it's awesome work, as I expect it is, I don't trust Oracle not to someday find a new way to screw me, whatever the text of the license. (I'm having doubts if this comment belongs here. But it's my genuine reaction, for what it's worth.)

Wouldn't touch this tech with a 10 foot pole due to licensing concerns and lock in.

LLVM is providing most of the interop without strings attached.

Re: GraalVM: Run Programs Faster Anywhere

#103
post #72
post #68

Earlier quoted context omitted.

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.

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.

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

#104

I wouldn't touch this with a ten-foot-pole without an explicit patent grant. Oracle has misbehaved too much in the past (and present) to ever be trusted again by the open source community in my opinion.

This was the first thought that crossed my mind.

If I have a choice between running our stack 50 times slower (and thereby 50 times the cost) or running anything Oracle, I know which choice is cheaper and doesn't come with an existential threat to my company.

Only governments and big corp are rich and reckless enough to take on this kind of risk willingly.

Re: GraalVM: Run Programs Faster Anywhere

#105
post #77

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.

Oh come on, I'm no fan of Oracle but this is some FUD nonesense..

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

#107
post #3

This is seriously huge. I wonder if it actually gets popular. Can anyone comment on TruffleRuby ? What remains to be done for it to be production ready ? GraalVM page still mentions it's experimental.

We are getting there, lots of things work right out of the box just fine. C extensions are still being actively worked on as they often need some amount of patching because of assumptions they make about types and so forth. I think we can reduce that, but I doubt it can will disappear entirely, but in the end I hope extension authors will test on TruffleRuby themselves and patch the code themselves.

Does that mean languages like Python and Ruby, which rely heavily on C extensions, will be waiting a long time to be fully compatible?

Re: GraalVM: Run Programs Faster Anywhere

#109

I wouldn't touch this with a ten-foot-pole without an explicit patent grant. Oracle has misbehaved too much in the past (and present) to ever be trusted again by the open source community in my opinion.

This was the first thought that crossed my mind. If I have a choice between running our stack 50 times slower (and thereby 50 times the cost) or running anything Oracle, I know which choice is cheaper and doesn't come with an existential threat to my company. Only governments and big corp are rich and reckless enough to take on this kind of risk willingly.

>> existential threat to my company

There is like a bajillion people out there running Oracle Java, MySql, Virtualbox and so on. All of them Oracle products, and with permissive licenses. Where is this "existential treat" thing coming from?

Re: GraalVM: Run Programs Faster Anywhere

#110

Graal dev here. If you want to checkout all the sources/licenses of GraalVM CE. They are here: Graal: https://github.com/oracle/graal (GPLv2 with CPE) JavaScript with Node Integration: https://github.com/graalvm/graaljs (UPL - BSD license) Ruby: https://github.com/oracle/truffleruby (EPL, GPLv2, LGPL) R: https://github.com/oracle/fastr (GPLv2) Python: https://github.com/graalvm/graalpython (UPL - BSD license) LLVM/Su…

>GraalVM is available as Community Edition (CE) and Enterprise Edition (EE). The current release is based on JDK 8.

Why is this ? We are currently on JDK 10. Also - why is there no official Graal Python ?

Post reply on HN