Mark *just* finished talking, so, hot off the presses, my notes from
his keynote presentation at Devoxx 2010:
# Mark Reinhold at Devoxx '10.
Start off with a review of java versions, apologies and introspective
on the clusterfail that was the java 7 schedule - you've heard this
before: The setting of Sun broke all planning, and the conclusion is
for 7 to be a less ambitious release without closures, and then work
on getting Java8 out the door as fast as possible after that (the Plan
B stuff we've read about before).
## Productivity:
### Java7: Diamond Operator: Map<String, String> map = new
HashMap<String, String>(); can now become:
Map<String, String> map = new HashMap<>();
[Editor's note: Lombok will one-up this feature on Friday!]
### Java7: Automatic Resource Management blocks. You can write:
try (InputStream in = new FileInputStream(src)) {
// read from in
}
[Editor's note: Lombok has let you do this for over a year now via
@Cleanup].
### Java7: Mention of Project Coin and its features.
## Performance:
Clock rates have topped out, instead CPU speed now comes in the form
of more cores.
sequential iterator (for loops) on big lists aren't compatible with
massively multicore CPUs.
Functional style iteration (map / filter / zip / etc) are. Review of
what these do.
Lambdas are showcased as a solution, then Defender methods to add map,
filter, etc to the collections APIs: http://twitpic.com/37kxub
### long-term plans for java:
Now Mark talks about Reification. Explains what it is and why it would
be nice.
Mark then talks about primitives in generics: http://twitpic.com/37ky8w
And somebody's been learning from Project Lombok: Simple POJOs in
Java: http://twitpic.com/37kyk9
### Talking about DaVinci (Jython on the JVM is often faster than C-
Python, but we can do better with features like InvokeDynamic). No
news I haven't heard before.
### Talking about what Project Jigsaw is about. No changes to what
module-info.java looks like: http://twitpic.com/37kz6a . Main goal of
Project Jigsaw is to get rid of '-classpath'.
Also a mention of how the jar file format is hampering modularization
efforts, so it'll be replaced with jmod, which is a custom format
specifically designed for java modules. Can be converted to rpms/debs,
jars to work with older java versions, etc.
[Editor's note: This is the first time I remember jigsaw vs. Maven
talk, usually it's jigsaw v. OSGi]. Mark talks about unifying compile-
time module systems like Maven and runtime module systems like OSGi;
they're going to look into making jigsaw do both of those things.
Showcasing the jmod tool which lets you create, edit, and work with
jmod modules.
Promises looking into a CPAN-like 'remote repository' feature for
jmod, which would look something like this: http://twitpic.com/37l0pg
## JVM Convergence
Not particularly specific talk about 'HotRocket' - the idea of
integrating JRockit VM and the Hotspot VM.
Showcasing Mission Control and Flight Recorder, the VM introspection
tools of JRockit. No mention of the 'premium VM' news that was in the
news a week or two ago. Mark never specifically said Mission Control
or Flight Recorder are going to be in OpenJDK or the free Oracle JVM.
## Java Plan B:
Java 7 released Mid2011, then the features planned for Java 7 that
aren't close to done yet, moved out to Java 8, to be released Late
2012. Mark says he's "pretty confident" about these dates:
http://twitpic.com/37l22c
Mark shows the Umbrella JSRs for Java7 and Java8 having been submitted
to the JCP earlier today.
OpenJDK will remain GPL+Classpath Exception. IBM and Apple are going
to contribute to OpenJDK. The OpenJDK governance structure will be
rebooted. Mark expects a MacOS implementation of Java7 available
within a few months of general availability of the Linux and Windows
implementations.
Release schedule of Java7. Mark again states he's "pretty confident":
http://twitpic.com/37l3fe
NB: I'll clean this up and post it to my blog later.
--
You received this message because you are subscribed to the Google Groups "The
Java Posse" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/javaposse?hl=en.