5 ms·
> While the primary platform is the JVM, superbly uncool but stable and relatively performant My impression was that java has the reputation of being "uncool"
by dominotw 7y ago
> While the primary platform is the JVM, superbly uncool but stable and relatively performant
My impression was that java has the reputation of being "uncool" but JVM is highly regarded as modern marvel.
I am wrong about this ?
- Insanity 7y agoIt just depends who you ask of course, but that is the idea you get. The JVM is pretty cool tech with many languages running on it that are considered cooler than Java.
- nafeydev 7y agoMy impression is that this perception is because of the slow garbage collection on JVM which eats up lots of cycles. Also all JVM languages tend to consume a lot of memory.
- eternalban 7y agoIT Java is uncool, but then IT is uncool even if written in Clojure (though the psychological aspect of using a "cool" language will likely dampen the existential pain of writing yet another book keeping CRUD app since now you are using s-expressions!) In my experience, people who say silly things about Java -- the technology, which certainly includes the Java Language Semantics, and JVM -- actually do not know what you can do with Java (the language). So yes, you Lisp nerds have you homoiconic 'mash' of syntax and thus AST manipulation, and we have first class Class Loaders and Byte Code Engineering and the sky is the limit there. Magic. But the sad reality of programmers' lives is the disconnect between the required cognitive capabilities of workers and the actual (domain) task at hand. tldr;/ its your job that is uncool not the tech.
- 0x445442 7y ago> But the sad reality of programmers' lives is the disconnect between the required cognitive capabilities of workers and the actual (domain) task at hand. Yeah, I just don't understand the less lines of code argument. This is not the limiting factor in software development, it's just not. The limiting factor is having enough information for the immediate Use Case and enough business domain knowledge to come up with a solution that delivers value to the business. The time spent on delivering that value dwarfs the time it takes to write some extra code. Let's look at Uncle Bob's example in the linked article... (println (take 25 (map #(* % %) (range)))) While fancy, that code is very Perlish and I think we all know the common criticisms of Perl. Also, fancy doesn't pay. What I've found to have a much larger negative impact on a project than the language is overly complicated architectures. To the extent Clojure can help with that I'm all for it. But from what I've seen, Java 8 with some clear conventions and constraining source code to the implementation of the Function interface can get you a lot of the same benefits.
- dominotw 7y ago> though the psychological aspect of using a "cool" language will likely dampen the existential pain of writing yet another book keeping CRUD app since now you are using s-expressions!) Damn! I felt that.
- kccqzy 7y agoNo you aren't wrong. Java the language has a reputation of being verbose, boilerplate-heavy, and inspiring over-engineered OO cruft. JVM on the other hand is a pretty modern and performant and nice-to-debug platform.
- BlueTemplar 7y agoMy experience is that Java programs tend to be buggy, slow messes. A lot of it is probably due to the inexperience of the average Java developer, but how do you explain Eclipse ?!?