So for languages like Clojure,Scala does this offer any new feature for them?
Yes [1]. Invokedynamic (JSR-262). Quote from an older article [2]:
"... enable[s] implementers of compilers for dynamically typed languages, that is, the people who develop compilers for languages such as JRuby and Jython, to generate bytecode that runs extremely fast in the JVM."
Meh. The world turns. I spent a decade developing primarily in Java, and the last few years were really disappointing. The community splintered, the language and platform really lost any ability to maintain momentum. I might have been stoked about Java 7 three years ago (when it should have come out).
I don't know if I agree. The Java language has floundered (I've been stuck coding in it for the last couple of years), but I think the platform/JVM has started becoming used more and more often for new + exciting language options. The new release should make implementing dynamic languages on top of the JVM easiser, and could open the doors for a lot of interesting options.
So for languages like Clojure,Scala does this offer any new feature for them?
Yes, Clojure will profit from Fork/Join: http://download.oracle.com/javase/tutorial/essential/concurr... For example see here, pvec: http://clojure.org/other_libraries Of course, improvements like the GC1, improvements in HotSpot etc, they all will make Clojure apps run even faster.
Oh nice, I thought F/J got pushed into 8. Glad to see I was wrong.
Meh. The world turns. I spent a decade developing primarily in Java, and the last few years were really disappointing. The community splintered, the language and platform really lost any ability to maintain momentum. I might have been stoked about Java 7 three years ago (when it should have come out).
Keep in mind this is JDK 7 (the JVM, libraries, tools), it's not only a Java The Language update.
You can now finally use a string in a switch statement, hurray (it's the little things that make me happy)! http://download.oracle.com/javase/7/docs/technotes/guides/la...
IntelliJ IDEA strongly suggests to turn those Strings into constants. And then to turn those constants into an Enum. Oh wait, we could also switch() on Enum values!