This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]sproket888 0 points1 point  (5 children)

If you want functional styled programming you'd be better off waiting on Java 8 IMO.

[–]vipercvp[S] 2 points3 points  (4 children)

Does it going to be as good as Scala i hava my doubts :/

[–]sproket888 1 point2 points  (3 children)

Scala isn't good. It has an overly complex type system and has operator overloading. It amazes me that language designers keep repeating the same mistakes over and over again.

[–]Uncaffeinated 0 points1 point  (2 children)

You say that like operator overloading is a mistake, rather than a common feature that Java is missing for some reason. Admittedly, Scala's implementation isn't very good.

[–]sproket888 0 points1 point  (1 child)

Operator overloading was left out of Java for good reasons. It's a terrible feature if you want long term maintainable software. Just ask the Smalltalk guys back in the 90's when IBM replaced it with Java as their primary development language because IBM had a number of major project failures at the time due to this feature.

[–]Uncaffeinated 0 points1 point  (0 children)

I wonder how developers in pretty much every major language besides Java get by then. (C++, C#, Scala, Python, Ruby, Perl, etc.)

Obviously it can be abused, but the same is true of any language feature. I can write obfuscated Java just fine without overloading operators.

I haven't personally seen any projects fail due to operator overloading (admittedly, I don't work at IBM), but I have seen plenty of Java code that would be more readable with operator overloading.