10 ms·
Native Clojure with GraalVM
- amelius 9y agoI'm still concerned about the license and the fact that this comes from Oracle.
- deleted 9y ago[deleted]
- bgorman 9y agoWhat concerns you over the JVM versus say, GCC? Both are GPL licensed. Oracle has committed to openJDK being the reference implementation.
- blunte 9y agoIf I say how nasty Oracle and Ellison have been in general, people will require me to provide references. I don't feel like researching it. But you can, if you want to answer your own question.
- Twirrim 9y agoGraalVM (and OpenJDK on which it's based) are 100% open source, on a GPLv2 license. It doesn't matter much what Oracle and/or Ellison do, the sources are all out there.
- DannyBee 9y agoThis is a super bad assumption. Given what we've already seen around GPL trolling (Mchardy et al), that may not mean a whole lot. I would bet you a large amount of money Oracle would come after you anyway. It's just how they operate.
- shakna 9y agoOracle vs Google over Android having the same interfaces comes to mind. [0] [0] https://www.techdirt.com/articles/20180327/10431439512/insanity-wins-as-appeals-court-overturns-googles-fair-use-victory-java-apis.shtml https://www.techdirt.com/articles/20180327/10431439512/insan...
- pjmlp 9y agoNeither Sun, nor Oracle ever had any issue with Java vendors that play by the rules and there are plenty of them.
- shakna 9y ago... And Google isn't a vendor here. The API was made the same, but with Google's own implementation. Several juries and courts have heard the case and said that an API isn't copyrightable. CAFC dismissed the juries' findings without reasoning. It's been punted back to a new jury and court for a final hearing.
- pjmlp 9y agoGoogle admited several times that they haven't done a clean room reverse engineering and their emails prove they were consciously trying to work around Java licensing issues. If Google cared so much, they could have bought Sun, but they were expecting it would just crash and burn, while the company would get away with it. Sadly for them Sun actually got a buyer.
- shakna 9y ago> Google admited several times that they haven't done a clean room reverse engineering > It is undisputed that Google copied verbatim the declaring code of the 37 Java API packages—11,500 lines of Oracle’s copyrighted code. It also copied the SSO of the Java API packages. Google then wrote its own implementing code. The only problem with Google's implementation is the copying of the API. --- > If Google cared so much, they could have bought Sun, but they were expecting it would just crash and burn, while the company would get away with it. > The parties were unable to reach an agreement, in part because Google wanted device manufacturers to be able to use Oracle’s APIs in Android for free with no limits on modifying the code, which would jeopardize the “write once, run anywhere” philosophy. > in any event that the jury must have found that Google did not act in bad faith Google tried to get a reasonable license. --- Even CAFC has said that if Google had not received advertising revenue from Android, their use of the APIs would have fallen under fair use. They are not a Java vendor.
- TJSomething 9y agoMy biggest concern is that there's an Enterprise Edition of GraalVM. I'm a little suspicious that the Community Edition will end up crippled and EE will cost more money than I'll ever want to spend.
- Volt 9y agoAs long as the community can contribute to "uncripple" it relative to the enterprise version then there's no problem, no?
- DannyBee 9y agoLet's play your fantasy out for a minute. Imagine I hire a large and good enough team of engineers to duplicate any feature in the enterprise edition and contribute it within a day of being released, to the community edition. Do you believe Oracle or anyone will accept that? Because if not, that's a clear problem. (FWIW I strongly doubt they would be okay with this)
- Twirrim 9y agoYou still gain the benefit from having a nice faster GraalVM, and given it's open source, you could create a fork and encourage the community to use it as an alternative. I'm sure if you were producing a much faster GraalVM, you'd soon get people to move away from Oracle's one to yours (MariaDB vs MySQL springs to mind as a comparison)
- dig1 9y agoThe problem here is what loophole a big company like Oracle can find, if they don't like you. They can't prevent you from doing a fork, but can easily sue you for not keeping copyright visible enough in project page README file. Taking into account amount of resources they have, this will be enough to shut you down ;)
- Twirrim 9y ago
- dindresto 9y agoGraalVM still does not support Windows, does it?
- cdrtz 9y agoGraalVM in the context of OpenJDK already runs on Windows. Native image generation on Windows is under development, should be available in the coming months.
- jgalt212 9y agosome immediately useful and practical applications of Clojure/GraalVM. nice work!
- latenightcoding 9y agoSorry for pointing the obvious and not adding anything useful to the technical discussion, but after the recent events I would not touch anything coming from oracle with a ten-foot pole
- walkingolof 9y agoI do not understand the rationals for this, its licensed under GPL2, care to elaborate a bit ?
- grzm 9y agonit: s/rationals/rationales/
- TAForObvReasons 9y agoParts are licensed under GPLv2+Classpath and other components like the js / python layers are licensed under UPL. And based on https://www.graalvm.org/downloads/ https://www.graalvm.org/downloads/, it would seem that Mac use is only supported by their "enterprise edition"
- cdrtz 9y ago"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." (Source: https://news.ycombinator.com/item?id=16859559 https://news.ycombinator.com/item?id=16859559)
- tensor 9y agoGPL2 doesn't give a patent grant does it? If not then you could still potentially be sued for patent infringement.
- jryan49 9y agoI thought GPL2 had some protections for that? http://en.swpat.org/wiki/GPLv2_and_patents http://en.swpat.org/wiki/GPLv2_and_patents https://github.com/oracle/graal/blob/master/regex/LICENSE.GPL.md https://github.com/oracle/graal/blob/master/regex/LICENSE.GP...
- dustingetz 9y agoso no eval at runtime which seems not to be such a big deal; we can develop at repl and then bake images for prod
- fnordsensei 9y agoSome of the Cognitect veterans have pointed out that being able to connect directly to an instance and evaluating code at runtime has been invaluable for debugging issues for their clients.
- setzer22 9y agoHowever, I don't see a use case for GraalVM in long-lived server applications. For that, regular JVM clojure will do just fine. On the other hand, using eval is almost never necessary in small standalone utilities.
- chrisseaton 9y ago> I don't see a use case for GraalVM in long-lived server applications GraalVM also includes a better JIT compiler though, which makes long-lived applications much faster. Twitter use it today to run their Scala code.
- kjeetgill 9y agoFrom Twitter engineer Chris Thalinger's videos[0] it seems like they're using JDK 9 or 10 and graal via JVMCI. Is there more to GraalVM than just using graal with a particular JDK release? [0]: https://www.youtube.com/watch?v=_7yIUkP5LiQ https://www.youtube.com/watch?v=_7yIUkP5LiQ
- chrisseaton 9y ago> Is there more to GraalVM than just using graal with a particular JDK release? Yeah there's a whole world of different ways you can use Graal. https://medium.com/graalvm/graalvm-ten-things-12d9111f307d https://medium.com/graalvm/graalvm-ten-things-12d9111f307d They're choosing to use the JIT from CE Graal (which they've built themselves), via the released version of JVMCI in a released JDK.
- abc_lisper 9y agoDoes graal run on arm
- cdrtz 9y agoA Graal backend for AArch64 is currently under development. See for example these PRs at https://github.com/oracle/graal/pulls?utf8=%E2%9C%93&q=is%3Apr+is%3Aopen+aarch64+in%3Aname https://github.com/oracle/graal/pulls?utf8=%E2%9C%93&q=is%3A....
- cup-of-tea 9y agoI cannot wait for emojis to go out of fashion.
- jrq 9y agoHeathen! What don't you like about emojis?
- aisyx 9y agoI'm alright with emoji as ideograms. I'm not okay with it in communication though.
- chrisseaton 9y agoWhat is an ideogram if it isn’t communication?
- aisyx 9y agoIn this instance I was referring to dialogue. A standard set of pictographs for use in websites and signage is fine, but when someone I'm talking to over text uses emoji I find it jarring and irritating at best.
- KMag 9y agoDo you mean corporate communication? The only way symbols are not used for communication are if they're immediately deleted/destroyed/only written to write-only media/etc. Even your personal diary and notes are communications with your future self.
- giancarlostoro 9y agoEmojis in code / end user output... Yeah, not a fan. I use them in texting / IM applications though, where they belong.
- dustingetz 9y agoemojis are text “body language” edit: hacker news filtered them and now the nuance of my message was lost!
- viach 9y agoThere are 2 download options for GraalVM - one with words "additional performance, security, and scalability" and another, well, without them. Does it mean that all the goodness of this technology is only available in the very, very paid option? In other words, it's not for startups who are trying to bootstrap themselves, right?
- peoplewindow 9y agoNo, SubstrateVM and Graal are both open source. The enhanced versions compile to faster code, pretty much. You can do without them if you don't want to pay.
- jadbox 9y agoI'm curious just how "optimized" and the paid version is (or how crippled the free version in comparison).
- chrisseaton 9y agoTry it yourself - both can be evaluated for free.
- ptx 9y agoWhat about the "improved security" of the enterprise version that the FAQ mentions? What makes the community edition less secure?
- truth_seeker 9y agoHow efficient is it compared to Azul Zing JVM ?
- sandGorgon 9y agoOne problem is that Graal is still on Java 8 (nearly two versions behind of latest stable) because it is marked as LTS. I think that's a bad decision for a bleeding edge piece of technology anyway - a lot of of the components that Graal needs are batteries-included in later Java releases. And most importantly, there's this - https://news.ycombinator.com/item?id=16919776 https://news.ycombinator.com/item?id=16919776 ( Java SE 8 business users must buy a licence from Jan 2019 to receive updates)