Sun was serious about write once run anywhere; Java is remarkably successful in that regard. Part of that was not including OS-specific functionality. We'll see how well MS does on that front.
Having the capability for doing OS development implies having a whole stack language, which Java never achieved.
Java is failure on the desktop, nowadays besides IDEs and a few FOSS tools there are hardly any applications done in Java on the desktop.
If Google hadn't forked it for Android, it would be yet another server language.
Besides Android, we only get RFPs for JEE projects nowadays.
Also all the features that should bring Java up to speed with the new generation of compiled languages in value types, generics and AOT compilation as standard toolchain feature are planned for Java 10 or later.
Why do you think Scala guys are exploring Scala Native?
> Java is failure on the desktop, nowadays besides IDEs and a few FOSS tools there are hardly any applications done in Java on the desktop.
Nowadays there are hardly any applications done on the desktop, full stop.
I agree that the JVM would benefit from being usable for a) command-line utilities that are lightweight enough to use in pipelines, and perhaps also b) decent native GUI applications (if you believe that niche is still important). But you don't need the capability for OS development to do those things. I mean, Python does those things. I don't think Scala Native is or should be serious about OS development.
What is an IoT LCD Display and who is targeting them in the same way they target Android and iOS? Sounds like some class of hardware, but only thing I can find by searching is toy projects hooking up an LCD to a RaspberryPi or Arduino
It is just what I remembered to type to mean any kind of screen being used in IoT scenarios, from car displays, factory control units, plane dashboards, cranes, ATMs, entertainment systems, biology cell screeners ...
They are targeting them the same way as iOS and Android in the sense that those type of applications are native to the underlying platform without any kind of browser playing the role of an OS.
Different sense of "platform". The point is that Java SE runs on many different OSes and architectures in write-once-run-anywhere fashion, including GUI applications. We've yet to see whether .net can deliver that.
Even Java SE needs testing and often dev work on a new platform. It's possible to write C or Java code that's cross platform, but that's not the default.
It's a lot closer to the default with Java SE. I've seen a fair few Java programs work first time on platforms they weren't tested on - as long as it doesn't access the native filesystem with windows-style paths it tends to be fine.
Sun was serious about write once run anywhere; Java is remarkably successful in that regard. Part of that was not including OS-specific functionality. We'll see how well MS does on that front.