Closures is coming, there is no JSR yet, time will tell.
Another very interesting topic in the session was the superpackage features planned:
With superpackages it will be possible to define group of java packages, telling which ones are private to the superpackage and which ones are public. This allows us to create coarse grained modules and efficiently hide internal implementation. This is IMHO the most interesting Java extension in the jsr horizon.
While the JSR 294 introduces static modularization, there is still the need for runtime (and therefore deployment) modularization.
The JSR 277 introduces modules and is similar to what we know from OSGi. Quite interesting to see all the module configuration elements as Annotations in the Java code. There is a nice blog posting about the modularization works from Glyn Normington (expert group members in the related JSRs, works for SpringSource).
The modularization planned for JDK7 is going to change the way we create components, as it provides the missing language features needed to create coarse grained components:
- side-by-side deployment,
- module bootstrap and
- module lifecycle
I am curious to see how deployment will change in the future, and the future of Java EE in general. For example, Spring architectures lack deployment standards, now the standards are being provided by the Java SE.
And finally, but least interesting, some JSRs that probably will find their way into Dolphin: