>Java now has native performance >interoperability with other languages >e.g. use C++ classes in Java as if they were standard Java classes and vice versa
graalvm.org
too bad it's owned by oracle It's GPL soon so non cancerous apache fork hopefully soon
Java/jvm was not not winning, its dominated the market for how many decades now?
Nathan Cruz
It was declining / stagnating, but graal (assuming oracle doesn't fuck this up) should settle things again
It'll take a few years before it becomes stable enough / documented enough to turn mainstream, but if Oracle doesn't fuck this up this may very well be the next big thing for devs even outside the JVM ecosystem
>JVM with built-in llvm byte code interpreter >more bloated than ever before >still little or no cross-language debug capabilities >supposed to make pajeet-tier code run faster
What does this have to do with java? Isn't this just an alternative to jvm but with support for more languages and hence not really a jvm?
Connor Murphy
>dig through website and its documentation >no precise definition of what graalvm actually is, what it does, or how it differs from other VMs >no wikipedia article >on the other hand, lots of marketing-like material about how good(tm) it is Is this all a marketing scam?
Is it the taste you enjoy most? Or the act of fellatio itself?
Colton Allen
>Google enters license negotiations for Java on Android >Doesn't want to pay monies >Google walks away mid negotiations >Google steals GPL code from Sun >James Gosling says Sun is "slimed" by Google, but to small to fight them >Oracle buys Sun >Oracle fights Google to protect GPL >Google tries to defend taking GPL code and relicensing it as "fair use" >Commifornia court agrees with Google >Oracle wins on appeal >Oracle single handedly rescues GPL from the total destruction >Jow Forums shits on Oracle
Oracle is the best fucking company in Tech Fuck you OP
Christian Miller
it was announced hours ago, more detailed docs will be released "soon"
Compiler is based on some pretty recent research papers though and seems legit
Logan Thomas
good, now I can make games for Android with Python
Benjamin Thomas
>It's GPL soon yeah nah >And these things are not open source: >TruffleC/ManagedC >TruffleJS/NodeJS API support >SubstrateVM >AOT support In other words the actual important deliverables are on the EE side, and this ain't no GitLab, this is Oracle we're talking about here. Wouldn't touch it with a ten foot pole in a commercial environment if I were you, unless you want to timebomb your company.
Can someone explain to me why Oracle is hated here?
Jonathan Garcia
>here It's one of the few memes Jow Forums is right about Oracle is hated everywhere, across all communities and political spectrums
Oracles is known for holding your entire company hostage by giving you decent initial terms, then once you're in deep enough they'll gradually extort more and more money out of you
They're the personification of soulless capitalism, even capitalists dislike it
Examples of things they have ruined: Java EE, OpenOffice (that's why we now forked into LibreOffice), MySQL
Their CEO is infamous for constantly flying his private jet low over residential areas at night, constantly waking up everybody. He doesn't care, just pays the fine every time
Kayden Ward
They tried to set a legal precedent to changed the definition of 'fair use'... although it was google they were suing. The owner of oracle is a douchebag. -- apart from those two, idk. contrarians hate popular things.
Jace Allen
>popular
They're massively stagnating though, they're only making money through legacy code Nobody uses their shit anymore for new projects
Charles Lopez
>>Java now has native performance
People said the same with java hotspot and shit
Josiah Lopez
this time is serious, i swear
Jace Thompson
Valhalla project(next next gen JNI),Project Loom's (go/erlang like concurrency), type refiner, pattern match, concurrent jdbc.
Java comes back
Chase Reyes
Oracle's MO: >acquire promising business-oriented tech company >increase contract prices for customers >push out engineers by putting sales in charge
Isaiah Nelson
This is actually pretty exciting. It says it supports llvm bytecode which by extension supports pretty much every language ever.
Xavier Russell
>java now has native performance it had native performance since forever the problem with performance in java is garbage collection, the ridiculous ammounts of memory it needs for even simple tasks and the levels of indirection it enforces (everything is a reference-counted object that lives on the heap, generics are done through casting). those are consequences of the design of java, not of the the vm it runs on. no vm is going to make java's memory consumption on par with c++.
Jordan Carter
I wish Google to get rekt, but on the base that Oracle sues random companies, e.g. for using the term "JavaScript", installs Ask Toolbars and doesn't allow benchmarks of their database software they better get rekt as well.
Too bad java is on a timer. Shits dead once java 10 forces you to use the module system.
Carson Peterson
That's why Oracle is making GraalVM capable of using other languages like C, C++, Python, R, JS, and Ruby. They figure they can still extract value by controlling the VM and embedding it within Oracle DB.
Carson King
We're getting """0-overhead""" garbage collection that frees space as soon as it is available instead of doing it in batches
So more like C++ smart pointers
James Peterson
Can't wait for Oracle to scale down since nobody wants anything to do with them anymore. They're the BP of software
Dominic Gomez
who is getting that? smart pointers don't solve dependency cycles. that's why garbage collectors are so complicated. there is no such thing as 0 cost garbage collection or even 0 cost memory management. hell, some application even benefit performance-wise from garbage collected languages because the runtime defers memory frees and preallocates more spaces.
there are even some servers that don't bother to free memory at all. they just spawn multiple workers and each one gets killed after passing over a threshold of memory use. a simple janitor process is responsible for spawning a new worker when one gets killed.
Cooper Gray
There are already multiple garbage collectors available that operate completely different
We (as in the common java devs) are simply getting another one
Austin Campbell
Oracle is just bloated enterprise level junk garbage.
Microsoft is the same except it's actually useful and works.
Everything else is better. Also fuck Java.
Asher Garcia
Because they've been brainwashed by Google shills
Daniel Morris
what is this magical 0-overhead garbage collector that you're talking about, snake oil merchant?
Carson Rogers
There's a reasong I put a total of six (6) " around """0-overhead"""
Take it as lower overhead than what we have now
Blake Ward
>Java/JVM just won >too bad it's owned by oracle >It's GPL I.e., it hasn't won. The market will be reluctant to adopt it because Oracle has very little developer/CTO goodwill at the moment. >Java now has native performance Java already has native-like performance on simple numerical tasks. The problem is with objects, and this problem won't go away until Java gets structs and libraries that use them. Java creates a lot of garbage and other JVM languages like Scala and Clojure create even more. As a consequence, the main source of performance problems for alternative JVM languages is the so-call "GC pressure", and it looks like GraalVM won't help with that.
Nicholas Stewart
Cool, one for the good guys. I see Java as come a long way.
Robert Collins
Oracle fucking sucks, though, and the API copyright thing is a loss for Wine, ReactOS, FreeDOS, Haiku, etc., and possibly emulators. Fuck Google, sure, but fuck Oracle, too.
Ian Ramirez
>They're the personification of soulless capitalism Soulless capitalism is severely underrated. That other companies pick Oracle and get owned is actually a failure at soulless capitalism -- by those other companies. Their management got persuaded by a sales pitch instead of doing their research.
Jordan Carter
>they just spawn multiple workers and each one gets killed after passing over a threshold of memory use "Any sufficiently complicated concurrent program in another language contains an ad hoc informally-specified bug-ridden slow implementation of half of Erlang" proven right again.
Hudson Ramirez
>Zero overhead
Brayden Ward
Low enough for real-time computing?
Nicholas Adams
It's written in java
Josiah Nelson
Yep. Zero.
Owen Taylor
This reeks of marketing hype. I've seen it posted just about everywhere and I see people defending it viciously, but what's the actual point? And don't say it's faster. It isn't.
Isaiah Foster
I am excited for it. I think the point is to be able to reuse code and to diversify your language use. For example, R is pretty strong in the statistical analyses department, so perhaps you can use this call R code from your Java webapp.
Ryan Hall
>Zero overhead Excellent, so my object-oriented spaghetti pile with 16 layers of indirection for everything can now run at the same speed as an object-oriented spaghetti pile with 16 layers of indirection written in C++. But, with a garbage collector.
Would this be a good solution to allow people to mod my game (written in Rust) with mods written in multiple different programming languages, I wonder?
Bentley Lewis
Just one thing. Fuck C, fuck C++, fuck every low-level garbage language aimed to suck C-addicted OS dev cock. Fuck FORTRAN '20XX for aping C's garbage and making it worse. C and some of it's clones have their place and right to exist but there is a lot more to programming than developing end user convenience software. I don't want to care about fucking hardware, period. Poointers belong in the fucking Loo. It's good to see VMs thriving, they pave the path towards efficient scripting level languages.
Hudson Ramirez
Maybe you shouldn't learn OOP from indian universities
Christian Bailey
You can't fix pure OOP. It's literally poo but backwards.
Ok then, have fun writing highly optimized sorting algorithms while I continue to make money at my job
Liam Smith
No, I mean from a design perspective there are just always things that are wonky in "proper" OOP, and people will eventually have to refactor chunks of code and encapsule things in unintuitive ways because they shot themselves in the foot somewhere. That's okay from an industry standpoint. You have the money and the resources to do that. And I stress that that is okay. But thinking that OOP won't eventually get ugly in a sufficiently complex project where it would not have been otherwise is delusion.
Caleb Nguyen
Java is big in soft-realtime (fintech), where have you been the last decade+? And no GC'd language will ever get notable usage in hard-realtime - you can barely afford to let L4 manage your processes, let alone use a non-deterministic VM on top of your almost-deterministic OS.
Matthew Murphy
>interoperability through strings and dozens of boilerplate for types lol >hard to debug >introduces security issues >sdk size is probably measured in GB Literally same features branded for java but with an interpreter this time for memelangs.
Charles Brooks
Hey I appreciate having people write kernels and shit but enlighten me why I should be obligated to manually fuck with my numerical algorithm just so it fits better on some arbitrary piece of silicon? Why should I manually parallelize code with shit like OpenMP? Why should I complicate my abstract mathematical issues more than necessary?
Cameron Lopez
Also, any bets on memory footprint and binary size?
Lincoln Campbell
So that you can live to see the output of your program. That (still) requires to certain degree to know how the MMU works, how your kernel schedules processes, when context switches occur, how the VM executes your shit, ... All the shit that you don't really care about but you have to if you're writing anything beyond a glorified hello world.
Leo Garcia
I have written quite heavy-duty numerical programs that had not a single LOC of Fortran that had to explicitly take any of that garbage into account. Thing is, in sane fortran code there are no memory adresses, no pointers, nothing of that sort in an explicit fashion. There are arrays. All memory management is explicitly working on arrays. Old fortran is strangely beautiful in it's simplicity in that way. Of course I know how my arrays lie in memory, byte aligned and all that. I know things about fortran's underlying C implementation and the implications this has. If I wanted to I can trivially access the 2735th position of a length-2 integer array which is actually a subfield of a global array to manually implement dynamic allocation (which is of course no longer necessary nowadays). I can work on things such as byte-alignments etc. But that, in my opinion, should be the work of the machine to figure out.