4 ms·
You may be right about Oracle, but I certainly can't tell from the VM offerings they put out.
by wavefunction 10y ago
You may be right about Oracle, but I certainly can't tell from the VM offerings they put out.
- chrisseaton 10y agoDo you really think the engineering in the JVM is that bad? I can't think of many VMs that have the technical capabilities that HotSpot or Graal do. The CLR doesn't even do basic speculative optimisations. Maybe Azul Zing or J9 are comparable in terms of the advanced techniques they use, but would you really put the Oracle JVM that far behind? I'm not sure there's any sound technical basis for that.
- wavefunction 10y agoI don't believe the strengths of the JVM are due to Oracle's efforts.
- pjmlp 10y agoWho do think pays the salaries of those engineers?
- KirinDave 10y agoIt's more that a lot of the work people admire was done before or close to the acquisition date and therefore probably should be credited to Sun. That said, I'm not sure why things like speculative execution in the JVM context get such play as dark magic when it seems like the JVM and CLR are pretty neck-and-neck in terms of deliverable performance when we get down to the level where we're not affected by larger architectural differences. There are a lot of different ways to get high performance code from a VM environment. But to hear many people tell it the JVM is the only competent one. I'm just not sure the evidence bears that out.
- bad_user 10y agoEvidence: JRuby, Clojure, Groovy are dynamic languages that have been successful on the JVM and that simply can't have the same performance on the CLR for obvious reasons. Microsoft tried investing in IronPython and IronRuby but failed. Furthermore a language like Scala can have a type-system that diverges from that of Java (e.g. higher kinded types) without taking a hit in performance. It's not dark magic, it's just good engineering. And the evidence is there in plain sight.
- KirinDave 10y agoI'm not sure I believe what you're saying is true. I'm a full time Clojure dev and let me tell you, if I give a damn about performance I avoid a lot of the cool parts of the language. And it gets even more severe with Scala. As Ruby should demonstrate, languages succeed because the community wants them. Not because they have specific performance characteristics.
- tejinderss 10y agoHi sorry for off topic question. But how do u feel about clojure ? I am a python developer and really interested in clojure. Do u think it's worthwhile learning ?
- KirinDave 10y agoCould you define "worthwhile?" Learning lisp is great if you want to be exposed to new functional programming ideas.
- vorg 10y agoDitto with Apache Groovy, which started off as a dynamically typed language to complement Java. The original use case for Groovy was to use it when performance doesn't matter (e.g. scripting, testing, glue code) and Java (or some other statically typed language) when it does. Unfortunately VMware wasted a lot of resources trying to redefine Groovy as a performant language which could replace Java's use case, or even run on Android (believe it or not).