Re:JDK 7 is Feature Complete
by Stormbringer on Tuesday January 18, 2011 @08:13AM
(#2115636)
I mourn the golden years of Java, when it was nice and simple, the weapon of a Java Knight, not as clumsy or as random as VB, an elegant language for a more civilized age... for over a thousand successful projects the Java Knights were the guardians of readability and sanity in the old code repository... before the dark times... before the complexifiers took over.
Re:JDK 7 is Feature Complete
by mark_l_watson on Tuesday January 18, 2011 @12:54PM
(#2116652)
Actually, Java has been getting better with annotations, etc. Java EE 6 is also a huge improvement over Java2EE. That said, I still use Ruby, Lisp, Clojure much more often, but Java is good also for some types of applications.
Re:JDK 7 is Feature Complete
by Roboprog on Tuesday January 18, 2011 @10:22AM
(#2116057)
Yes (lambda/closures - NOT), and (NOT) the "modularization" change where they were going to separately bundle groups of packages.
The modularization/bundling features also sound like/related-to the maven-ish extension discussed (somewhere) to put versions on these bundles and "even more public than public" specifiers on things to be exported from the modules themselves, as opposed to merely "public", but only between packages within the module. These changes sounded like they would relieve some of the DLL^H^H^Hjar hell with code needing different versions of 3rd party libs (e.g. - Axis-of-evil).
So, yeah, some corporate exec checklist features, but little for developer productivity / sanity added. Sadness.
Re:JDK 7 is Feature Complete
by mindcrime on Tuesday January 18, 2011 @10:14AM
(#2116030)
I'll be happy to have Java 7 just for the new VM with InvokeDynamic. I've pretty much moved on from writing "plain old Java" and am using Groovy heavily, while also learning Scala and Clojure.
One of the biggest knocks against Groovy has always been performance, so if InvokeDynamic helps the Groovy team amp up Groovy's performance, that'll be a big win in my book. And if it helps JRuby, Scala, Jython, Clojure, or any other JVM languages (which it should... I think the JRuby guys are really excited about this), then so much the better.
I do believe you mean lisp, not java. http://xkcd.com/297/
* good stuff - Project Lambda, langauge support for collections, reified generics (TBD?)...
The modularization/bundling features also sound like/related-to the maven-ish extension discussed (somewhere) to put versions on these bundles and "even more public than public" specifiers on things to be exported from the modules themselves, as opposed to merely "public", but only between packages within the module. These changes sounded like they would relieve some of the DLL^H^H^Hjar hell with code needing different versions of 3rd party libs (e.g. - Axis-of-evil).
So, yeah, some corporate exec checklist features, but little for developer productivity / sanity added. Sadness.
* Added an invokedynamic instruction for faster execution of dynamic languages on the JVM
* Small language changes (e.g. strings in switch). See http://openjdk.java.net/projects/coin/
IMHO, this is worth the upgrade. I only hope it doesn't come with a Larry Ellison action-figure...
One of the biggest knocks against Groovy has always been performance, so if InvokeDynamic helps the Groovy team amp up Groovy's performance, that'll be a big win in my book. And if it helps JRuby, Scala, Jython, Clojure, or any other JVM languages (which it should... I think the JRuby guys are really excited about this), then so much the better.