Over a million developers have joined DZone.

Your Programming Language Sucks?

· Java Zone

Discover how AppDynamics steps in to upgrade your performance game and prevent your enterprise from these top 10 Java performance problems, brought to you in partnership with AppDynamics.

Update 2012-June-20: Please also read my follow-up post, Revisited: Your programming language sucks?

I met someone recently that declared “Java sucks.” One proffered argument of that “suckiness” was Java’s lack of expressiveness. In point: you can’t compare two Date objects with the less or greater -than operators. Further, you can’t override the operators themselves. (I won’t touch that subject; we covered it in Computer Science 201.)

Date now = new Date();
Date epoch = new Date(0);
assert now > epoch; //won't compile

Nope, that won’t compile. What are we to do?

assert now.after(epoch);

There, that works. But what if we really, desperately wanted to use operators?

assert now.getTime() > epoch.getTime();

Both of these seem perfectly expressive to me. Much ado about nothing? I think it’s a matter of comfort and familiarity.

Saying a programming language “sucks” says less about the language and more about the person speaking.

 

The Java Zone is brought to you in partnership with AppDynamics. AppDynamics helps you gain the fundamentals behind application performance, and implement best practices so you can proactively analyze and act on performance problems as they arise, and more specifically with your Java applications. Start a Free Trial.

Topics:
java

Published at DZone with permission of Mike Christianson , DZone MVB .

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}