
Proposed schedule change for JDK 9 - jcytong
http://mail.openjdk.java.net/pipermail/jdk9-dev/2016-September/004887.html
======
nomercy400
So, one of the complexer part of Java isn't completely finished, and they want
to postpone the release instead of releasing something buggy. I'm fine with
that. Everybody survived with Java6 for half a decade as well. And three years
with Java7.

~~~
pjmlp
Me too, specially on Android where we still need to survive with Java 6 and
cherry picked pieces from Java 7 and Java 8.

Most likely it will never see 100% support for Java 8, or anything else that
comes afterwards.

~~~
cageface
If you can get away with using it Kotlin fixes almost everything I dislike
about Java and works for Android development today.

~~~
pjmlp
Actually I spend most of my time on C++ side, which also has its own share of
issues regarding Android tooling.

Still checking in how Kotlin support evolves, my experience using languages
like Turbo Pascal, Delphi and Oberon made me weary of using using languages
that aren't directly supported by platform owners for production code.

~~~
rallycarre
Kotlin is amazing. It takes the best parts of Scala while keeping the
simplicity of Java.

It may not be supported by Google but it was created by Jetbrains, the
developer of Ideaide which is what Android Studio is based on, so it's support
is top notch.

The best part of Kotlin is there is near zero cost to using it. You can learn
it in a day and is fully interoperable with Java. :)

~~~
premium-concern
That's kind of nonsense. Kotlin adds some syntax sugar to Java, but it's not
related to Scala in any reasonable way.

------
ddon
In short, Mark proposes a four-month extension of the JDK 9 schedule, moving
the General Availability (GA) milestone to July 2017, and the reason is
because number of open bugs that are new in JDK 9 is quite a bit larger than
it was at this point in JDK 8.

~~~
riffraff
..and they still need to iron out some details of project jigsaw (the new
module system, which was originally planned for Java 7)

~~~
needusername
The work currently being done on Jigsaw is not details at all.

------
wocram
Is anyone eagerly awaiting JDK9?

~~~
chrisseaton
One thing I am looking forward to in JDK 9 is the new API, called JVMCI, that
lets you replace HotSpot's JIT compiler with one written in Java. Oracle Labs
is working on a compiler for this called Graal. We're using this to make
languages other than Java running on the JVM, like JRuby, run faster by using
the JIT compiler API directly.

(I work for Oracle)

~~~
gravypod
Do you know the guy who did the talk about optimizing Ruby for the way Ruby
devs use Ruby? They used an example if an image library clamp function which
was a mess. Using sort to clamp a value.

Whoever that guy is, I'd like to be able to say he did an amazing job. Good
work on your groups.

~~~
mike_hearn
That talk was by Chris, who you are replying to.

~~~
gravypod
Well shit I've got to say that he is amazing! Chris keep up the good work. I
look forward in seeing where you take it from here.

------
eDameXxX
OFF-TOPIC:

I am the only one who is not that happy that Java is so popular?

I don't even know where that feeling come from.

~~~
pjmlp
I am happy that Java is popular.

I know it since Sun introduced it and it was a saner experience than C++ back
in the day, when each compiler implemented their own vision of the ongoing
working standard.

There are only three things I don't like about Java, proper AOT compilation is
only available in commercial JDKs and lack of value types, and use of
@Overrides annotation instead of adding a proper keyword.

The first two will hopefully get addressed in Java 10, assuming Oracle doesn't
change their minds about the language.

~~~
adimitrov
I agree with your points, but would like to add another one: runtime generic
type erasure needs to go. Whether it is through reification or some other
means, I don't care, but it feels like every single time I sit down to write
some solid core-of-the-program basic code, I run up against erasure.

It's probably not every time, but you get the point.

That said, I think that Java 8 is in a good state, and I really liked its
improvements. For Java 9, the new modularization system seems interesting, and
I'll be happy to ditch classpaths!

~~~
pjmlp
> runtime generic type erasure needs to go.

Is is part of the value type related changes.

[http://www.oracle.com/technetwork/java/javase/community/jlss...](http://www.oracle.com/technetwork/java/javase/community/jlssessions-2016-3114175.html)

How it will actually look like is still WIP.

~~~
aardvark179
I think you should be very careful with statements like that. The Valhalla
work adds a mechanism by which generic types can be reified, but reference
types in Java are not proposed to be reified as that would cause big
interoperability problems with existing code. However the mechanism introduced
for reifying value generics could be used by other JVM languages to provide
reified reference generic types.

So HashMap<MyRefClass> will always remain the same class as HashMap<Object>
when created in Java code, but might not be the same in another JVM language,
and HashMap<MyValueType> will never be the same class as HashMap<Object>.

~~~
pjmlp
True, but nothing prevents them to have an ImprovedHashMap<any MyRefClass>.

