Live data from Hacker News

If Java Is Dying, It Sure Looks Awfully Healthy

drdobbs.com

201–210 of 327 posts

Re: If Java Is Dying, It Sure Looks Awfully Healthy

#201

Earlier quoted context omitted.

You can get all of that and clearer writing in c#, with Intellisense.

Doesn't C# have "magic" getters and setters, where code like "foo.bar = quux;" might mean a function call? To me, that's not clearer at all.

Isn't not needing to know whether an object property is real or synthetic a feature?

Re: If Java Is Dying, It Sure Looks Awfully Healthy

#202

Java may not be dying, but it does take off early on Fridays for golf. Java is not dying the same way Cobol was not dying 10 years ago. It has a lot of legs left but nobody is 'hoping' to use it, they are told to do so. Java is and always has been almost completely a corporate tool. Again, like Cobol, so the 'cool kids' are not going to give it much love. It's too slow to execute to compete with C++, its too slow to…

Comparing Java to Cobol is ridiculous. I'm in the cool kids category and I like Java. If you don't want to / can't use C#, there's simply no alternative for bigger projects. Groovy - slower, much worse toolability Scala - less readable, slower, slow compilation, worse toolability, too complex.

What are these bigger projects which can only be implemented in java? The linux kernel? Photoshop? Facebook? Or some kind of godawful tiered corporate thing that's big and unwieldy precisely because it's implemented in java?

Re: If Java Is Dying, It Sure Looks Awfully Healthy

#203

I primarily use java in my day job, and although there's a lot not to like about it, some standard complaints are somewhat overblown. For example, nothing really forces you to use long variable/method names, but even if you do, a modern IDE -- I use IntelliJ -- with auto-completion makes these fairly painless. It's not like you have to type every letter of "SomeClass.veryLongMethodName()" -- rather, you type "SomeCla…

> In fact, it's unclear to me where java might be optimal. I'd say server side processing of whatever. That's what we use it at work for, and I don't see how any of the mainstream languages would be much, if any, better. Our software has to run on our customers' servers, so portability is of utmost importance since we don't want to need to compile it for random OS's. This rules out languages that need native binaries…

Python/Ruby/whatever will most likely get faster as access to tools like LLVM and the JVM itself is getting more common these days. You'll still get the HUGE bump in development times (due to the inherent expressiveness of the languages) and at least a good portion of the speed benefits you'd reap from Java itself.

Re: If Java Is Dying, It Sure Looks Awfully Healthy

#204

Java may not be dying, but it does take off early on Fridays for golf. Java is not dying the same way Cobol was not dying 10 years ago. It has a lot of legs left but nobody is 'hoping' to use it, they are told to do so. Java is and always has been almost completely a corporate tool. Again, like Cobol, so the 'cool kids' are not going to give it much love. It's too slow to execute to compete with C++, its too slow to…

Comparing Java to Cobol is ridiculous. I'm in the cool kids category and I like Java. If you don't want to / can't use C#, there's simply no alternative for bigger projects. Groovy - slower, much worse toolability Scala - less readable, slower, slow compilation, worse toolability, too complex.

If you don't want to / can't use C#, there's simply no alternative for bigger projects.

People keep repeating this as it was some sort of axiom. My feeling is that people mean that it's hard to write large Java-like projects outside Java. It's not the the problems can't be solved without Java, it's that you "can't" solve them the Java-way without using Java or C#.

Re: If Java Is Dying, It Sure Looks Awfully Healthy

#205
post #186
post #54

Earlier quoted context omitted.

Automatic memory management (especially with a garbage collector) is antithetical to high performance. I like the JVM (for Scala, mostly; Java-the-language can go screw), but there is nothing there really remotely close to C++ and C, and the garbage collector is a very large part of why.. Rust might horn in on C++'s bailiwick, but until then, it's gonna be a while. I strongly disagree that Boost really adds "so much…

Sigh. This again? A good garbage collector will always reach a higher throughput than "manual" dynamic allocation/deallocation in C/C++. Pauses are a different matter, and can impact latency; in cases where latency is crucial, Java programs either resort to manual memory management or use a commercial low-latency GC. If you're comparing the JVM's GCed heap with some specific, user-managed allocation scheme, then know…

C++ gives you the option to just put your objects on the stack and have them clean themselves up upon destruction. Enforcing the placement of small objects on the heap, even a garbage collected heap, seems such a waste of time and efficiency. You shouldn't really use the term "always" either. You have the option of implementing a garbage collector manually, or an object memory pool to remove the malloc/free new/delete overhead.

Re: If Java Is Dying, It Sure Looks Awfully Healthy

#206

Earlier quoted context omitted.

Doesn't C# have "magic" getters and setters, where code like "foo.bar = quux;" might mean a function call? To me, that's not clearer at all.

Isn't not needing to know whether an object property is real or synthetic a feature?

Huh? Of course it is a feature. My point is that if something as innocent looking as property access can be an arbitrary method call, it may make understanding a piece of code more difficult. From the point of view of debugging existing code, which I've done a lot lately, hiding details that may matter in corner cases is not something that I want the language to encourage.

Re: If Java Is Dying, It Sure Looks Awfully Healthy

#207
post #105

Earlier quoted context omitted.

So which hip languages are these "thought leaders" using now?

Python, Ruby, Javascript, JVM-hosted languages like Clojure, Scala, and newer languages still in development like Elixir, I'm sure I'm missing some. Haskell is perpetually 10 years ahead in programming research but sadly it functionally lacks support for day-to-day scripting tasks.

Rust, Erlang?

Re: If Java Is Dying, It Sure Looks Awfully Healthy

#208
post #84

With Hadoop, Lucene, Solr, etc. written in Java, there is no doubt that Java is here to stay. None of these libraries (or many others) have competing implementations written in other languages.

"None of these libraries (or many others) have competing implementations written in other languages."

Except the ones they were written to copy. Each example you give is an open-sourced clone of an pre-existing version implemented in a different language.

Re: If Java Is Dying, It Sure Looks Awfully Healthy

#209
post #116

Earlier quoted context omitted.

"There are only two kinds of languages: the ones people complain about and the ones nobody uses." -- Bjarne Stroustrup

Bjarne Stroustrup has no right of saying anything regarding language implementation and validity of users complaints.

He didn't say anything about the validity of complaints.

Re: If Java Is Dying, It Sure Looks Awfully Healthy

#210

Earlier quoted context omitted.

Bjarne Stroustrup has no right of saying anything regarding language implementation and validity of users complaints.

Could you substantiate your statement please. I find that he is in a good position to do so because C++ evolved based on feedback from people using it and he was responsible for the first version(s).

Sure.

Nowadays the consensus is that C++ introduced more problems into the industry than it solved. Moreover it keeps introducing more and more problems with each new revision.

In this light his statement is merely an attack upon his critics e.g. "Haters gonna hate..." while ignoring the possibility that criticism of "his" programming language is well founded.

Sure people bitch about every language sometimes. Hell I bitch about languages I use now and then, but I keep using them.

While systems programmers are fleeing from C++ back to C(!!!) and to newer languages like Go (for which the core design principle could be described as "Not C++").

To me his statement sound like a chronic alcoholic saying "There are only bad kids and kids you don't have."

Post reply on HN