Comment by satvikpendem
1 day ago
But if you want "blazing fast" performance then there are other languages like Rust that the AI can write, and Rust runs basically everywhere Java does these days (and more) except perhaps Android, for which there are still ways around it.
> Rust runs basically everywhere Java does these days (and more)
I don't follow Rust as much as I wish I could if I had more free time.
What platforms are supported in Rust that don't support Java?
Does Rust have diagnostics, monitoring and debugging support anywhere near JVM quality?
Primarily embedded, for which Java is basically unsupported for many use cases. Rust does have diagnostics and monitoring but it's debatable if they're as good as the JVM although again some places Java can't even run.
Plenty of embedded vendors have Java implementations.
PTC, Aicas, microEJ, Ricoh, Xerox, Cisco, and several M2M vendors.
The first three even have bare metal variants, where the runtime is the OS.
Naturally they aren't targeting ESP32, Arduino, PIC class of devices.
Many of us know how to write blazing fast code with Java, first step is embrace the ecosystem, followed by actually understanding algorithms and data structures.
Most rewrite language X in Y are justifications after the fact, when the real reason is language Y was cool for whatever reason.
Incidentally, Java seems faster on the server side than Rust in several benchmarks I've seen and tried locally - yes to be taken with a grain of salt, but point being that Rust is not the be-all performance aspiration - there are some really good Java One 26 and Devoxx 26 talks pertaining to the importance of well spec'd languages like Java and runtimes like the JVM in the age of AI. And this is without talking about things like monitoring and observability.
For complex enough and long-running application your run-of-the-mill Rust (so probably what AI would generate) will likely be slower than your run-of-the-mill Java.
I know this is a heresy in some online religious groups pretending to care about engineering but that's reality.
> For complex enough and long-running application your run-of-the-mill Rust (so probably what AI would generate) will likely be slower than your run-of-the-mill Java.
That phrase "complex enough" seems to be quite load bearing.
At which point does complexity reach the tipping point where a Java implementation becomes faster? From my experience, the more complex the application, the more enerprisey the Java code becomes, relying heavily on dynamic capabilities that make it slow even by Java standards.