Hacker News new | ask | show | jobs
by hokua 5368 days ago
Well said. A lot of people on HN (including PG) like to diss Java as some backward corporate language. The fact that you can run Lisp on the JVM (clojure) shows that such criticisms are shallow.

Lisp may be superior to Blub. But if Blub has excellent libraries X,Y, and Z that make solving your problem a lot easier, using Lisp may be a no-go - unless you can interoperate with Blub code from Lisp -- something that a virtual machine like the JVM makes very easy without having to write bindings.

1 comments

J2EE (what most people are referring to when they talk about Java sucking) is a really awful, verbose thing to write programs in, and I had those feelings well before I started reading articles about it. It's not a shallow criticism.

The JVM, on the other hand, is great, and lots of great tech has come out of it. I haven't seen too many people disparaging the JVM. There is also quite a lot of useful, stable library code in the Java universe.

j2EE != Java. J2EE is a framework. More accurate to compare J2EE and Rails. Or compare Swing to Qt. You can program in Java without J2EE and Swing (which suck). The criticism is against Java. You are adding your own qualification.
Java, the Programming Language, not the Development Environment, is what I think he was talking about. The JVM is awesome and will be one of the platforms that defines the next generation of languages (e.g. Clojure, Scala).

Java the language is painful after writing in Lisp, Clojure, Ruby, et al.

Edit: C# is also widely regarded as "superior" to Java.

> C# is also widely regarded as "superior" to Java.

It feels like saying Stheno and Euryale are Medusa's pretty sisters.

I suppose, but it's what a lot of people are stuck writing in enterprisey Java shops, and it's been my impression that people mix the two up when complaining. That might be wrong, though. I suppose the core language has a number of problems of its own as well. I don't think people think the JVM is one of them, though, and it's not really what most people are talking about when they talk about programming in Java.