Linked by vodoomoth on Fri 24th Sep 2010 22:56 UTC
Java Oracle has made some decisions about Java: in order to release JDK 7 in the middle of next year, they have decided to change priorities and specifically, postpone three features: Jigsaw, Lambda and Coin.
Thread beginning with comment 442606
To read all comments associated with this story, please click here.
No thanks to Java
by tbcpp on Fri 24th Sep 2010 23:31 UTC
tbcpp
Member since:
2006-02-06

I've tried learning Java, but the lack of properties (C# does this so awesomely), lack of lambdas, and to be frank, a lack of LINQ, makes it so I just can't stand it as a language.

C# is more like a staticly typed Python. Java is like C++ with a garbage collector.

I have to agree with this guy: http://day-to-day-stuff.blogspot.com/2007/12/demise-of-java-long-li...

Java is dieing, the JVM is still solid, but give it a few years, and Clojure, JRuby, Jython, and others will kill it off, IMO.

Reply Score: -2

RE: No thanks to Java
by kaiwai on Sat 25th Sep 2010 00:51 in reply to "No thanks to Java"
kaiwai Member since:
2005-07-06

I've tried learning Java, but the lack of properties (C# does this so awesomely), lack of lambdas, and to be frank, a lack of LINQ, makes it so I just can't stand it as a language.

C# is more like a staticly typed Python. Java is like C++ with a garbage collector.

I have to agree with this guy: http://day-to-day-stuff.blogspot.com/2007/12/demise-of-java-long-li...

Java is dieing, the JVM is still solid, but give it a few years, and Clojure, JRuby, Jython, and others will kill it off, IMO.


On the desktop it died a while ago; Apple killed off their Cocoa bindings for Java - when you consider these:

1) Objective-C 2.0 has garbage collection, and in the future that'll arrive on iOS.
2) Silverlight and .NET are the platform of choice when it comes to WP7 development in the future.
3) Multilanguage nature of Android.

The 'need' (if there ever was one) to write in Java has pretty much died. It is going to survive but I'd say as more of a niche product in the enterprise with the largest customer being Oracle itself for their own projects.

Reply Parent Score: 2

RE[2]: No thanks to Java
by Tuishimi on Sat 25th Sep 2010 03:51 in reply to "RE: No thanks to Java"
Tuishimi Member since:
2005-07-06

It's still faster and more efficient for large website engines than many web development platforms. I'm not particularly fond of it, but we've been using it for 8 years now. A recent, internal project I've been assigned to uses RoR/Hobo. While I enjoy developing with Ruby/Rails, it is slow in comparison to a Java-based site (even using JRuby) because of the chatty data management model it uses.

Trade offs. But Java hasn't quite died yet.

Reply Parent Score: 2

RE[2]: No thanks to Java
by moondevil on Sun 26th Sep 2010 06:26 in reply to "RE: No thanks to Java"
moondevil Member since:
2005-07-08


On the desktop it died a while ago; Apple killed off their Cocoa bindings for Java - when you consider these:

1) Objective-C 2.0 has garbage collection, and in the future that'll arrive on iOS.
2) Silverlight and .NET are the platform of choice when it comes to WP7 development in the future.
3) Multilanguage nature of Android.

The 'need' (if there ever was one) to write in Java has pretty much died. It is going to survive but I'd say as more of a niche product in the enterprise with the largest customer being Oracle itself for their own projects.


Apple only introduced the Cocoa bindings for Java, because in the begining they were unsure the developer community would pick up Objective-C. So they were offering both languages to see which would gain momentum.

I would agree that you will hardly find any software package at the local shop developed with Java.

But on the corporate world Java is pretty much alive in the desktop.

Regarding your points

1) Outside MacOS no one cares about Objective-C
2) .Net is only a choice when targeting Microsoft systems and the sucess of the WP 7 is still uncertain
3) Not sure what multilanguage you mean. C and C++ besides Java? Anyway android is only used in mobiles.

Java is pretty much alive in the enterprise. There is no language out there good enough to replace it.

.Net is only an option if you are deploying Windows only solutions. Don't even talk about Mono to .Net guys, it is always seen as a kind of toy.

C++ has already lost its position to applications that require lots of performance out of the systems, and does not have the tool support that Java and .Net enjoy.

The only scalable, performance and multiplatform language currently available in the enterprise world is Java and it won't change in the near future.

Sure the community is not enjoying all these delays, but they aren't nothing, compared to the time C++ developers will need to wait for a 100% C++0x fully compliant compiler, across multiple platforms.

Reply Parent Score: 4

RE: No thanks to Java
by Tuishimi on Sat 25th Sep 2010 04:00 in reply to "No thanks to Java"
Tuishimi Member since:
2005-07-06

We are using JRuby for a project now. It is significantly quicker than standard Ruby. I've been curious about Clojure. I use Groovy at home for some small projects (ex. I wrote something to generate math programs for my kids to practice on).

It seems like they should, perhaps, spend as much time as possible enhancing the compiler/byte-code intepreter.

Reply Parent Score: 3

RE: No thanks to Java
by KermitTheFragger on Sat 25th Sep 2010 11:03 in reply to "No thanks to Java"
KermitTheFragger Member since:
2008-06-12


C# is more like a staticly typed Python. Java is like C++ with a garbage collector.


Well as you can see here: http://en.wikipedia.org/wiki/C_Sharp_(programming_language). Python isn't among the list of languages that influenced C#.

That might have something todo with the fact that Microsoft started working on .Net AFTER the lawsuit from Sun. This lawsuit ended in Microsoft not being allowed to use Java anymore (ie. stop trying to hijack Java with its J++ 'implementation'). When all the dust settled Microsoft paid Sun something like 1.6 billion Dollar iirc for all infrigement, non compliance, etc.

.Net 1.0 was basically a Java clone. It was only AFTER 1.0 that Microsoft came with innovation.

So how anyone can say .Net is more like language X then Java is beyond me.

Reply Parent Score: 2

RE[2]: No thanks to Java
by katelin on Sat 25th Sep 2010 11:47 in reply to "RE: No thanks to Java"
katelin Member since:
2008-10-06

He didn't say that C# 1.0 was more like Python than Java 1.6, he was saying that more recent versions of C# (like 4.0) are a lot more like Python than Java is.

And it's true.

C# 4.0 has a lot of dynamic features that really help in writing a lot of code that Java just doesn't have (but is slowly copying from C# now that Java's dominance is being threatened).

Reply Parent Score: 1

RE[2]: No thanks to Java
by nt_jerkface on Sat 25th Sep 2010 16:35 in reply to "RE: No thanks to Java"
nt_jerkface Member since:
2009-08-26

This lawsuit ended in Microsoft not being allowed to use Java anymore (ie. stop trying to hijack Java with its J++ 'implementation').


What is rarely mentioned is that Java looked and ran like garbage in Windows.

Developers hated how Java looked in Windows thanks to the VM and non-native controls.

Java was really sunk on the desktop thanks to Sun's arrogance. I remember seeing a thread where a developer complained that clients did not like how Java fonts looked in Windows and a Sun rep told him to suggest an OS change. Java would have died on the desktop even if .net was never created. Developers hated how Sun ignored their needs, some alternative framework would have been created out of necessity.

Reply Parent Score: 4

RE[2]: No thanks to Java
by tbcpp on Sun 26th Sep 2010 13:27 in reply to "RE: No thanks to Java"
tbcpp Member since:
2006-02-06

No, I'm not saying it's based on Python. But in it's current incarnation (.Net 4). C# supports lambdas, dynamic variables, and even includes a SQL like DSL (LINQ). C# is an imperative language with declarative features. In that sense it is like Python. For instance, C#, Python and Ruby all allow you to do something like this:

var array1 = array1.Filter(x => x.Size > 20);

Doing that in Java/C++ would take about 5 lines of code to create a temporary array, filter the data, and then output the results, and it still wouldn't be clear what was happening. With C# the result is clean, elegant and only 1 line of code.

Reply Parent Score: 2

RE: No thanks to Java
by ebasconp on Sat 25th Sep 2010 14:21 in reply to "No thanks to Java"
ebasconp Member since:
2006-05-09

I've tried learning Java, but the lack of properties (C# does this so awesomely), lack of lambdas, and to be frank, a lack of LINQ, makes it so I just can't stand it as a language.


The problem with you is that you want Java to be C#. C# has its evolution by that way and we should not expect that Java is going to evolve by the same way:

* Properties: They are just an elegant way of write GetX() and SetX().

* Lambdas: They were part of the JDK 7 release plan, so, you will see them some day... Anyway, you have anonymous classes that do the work.

* LINQ: Beautiful C# extension but could be implemented as a set of libraries.

Java is dieing, the JVM is still solid, but give it a few years, and Clojure, JRuby, Jython, and others will kill it off, IMO.


Java is going to be the "C" of such languages. Nobody is going to rewrite the whole JDK in such languages, so, Java will always be the language where the JDK is going to grow.

Edited 2010-09-25 14:22 UTC

Reply Parent Score: 4