Jakob, all,

Getting support for JDK8 asap is I  believe important. But I'm more leery of 
having it as the default platform for 2 reasons:

1. In some organizations there is standardization that gets more severe the 
lower you go down the application and system stack. Deploying a new app or 
service has a certain degree of pain, but a 'non-standard' JDK version can  be 
almost as painful as trying to get a new OS out there. This problem naturally 
tends to afflict larger and more conservative companies  -- and is likely 
getting better -- but I don't think we want premature JDK deprecation to be an 
impediment to new users.

2. Paranoia! I've not had any JDK8 systems in production use yet and don't know 
anyone who has. So it'd be nice to have input from anyone in the community who 
already has such experience.

I think the most interesting part of those Hadoop discussions and others is the 
focus on having a clear roadmap with given future versions having pre-defined 
support for given platform versions. It would do the community -- and in 
particular new adopters -- a major service to have something similar. So 
something like the below if we wanted to be very methodical:

Release 0.7: default JDK7, supports JDK6
Release 0.8: Default JDK7 supports JDK8
Release 0.9: Default JDK8 supports JDK7
Release 0.10: Default JDK8

My vote would certainly be for JDK8 support to be in the 2nd release and at the 
same time drop JDK6. Since that's some months away it gives us time to decide 
if JDK8 is default or supported by then. But certainly we should have JDK8 as 
the default platform by the time JDK7 is EOL though we likely need keep JDK7 
support past that point, distasteful though it may be.

Garry

-----Original Message-----
From: Jakob Homan [mailto:[email protected]] 
Sent: 25 June 2014 00:54
To: [email protected]
Subject: [DISCUSS] JDK7 v JDK8 (and a bit of Scala v Java)

Hwæt!

Over in Hadoop, there're currently a couple very long threads regarding
JDK7/8 support (http://bit.ly/jdkthread1 and http://bit.ly/jdkthread2).
 They're worth browsing through and we should have a similar discussion here. I 
was particularly surprised by the point in their thread that JDK7 is slated for 
EOL for April 2015 ( http://www.oracle.com/technetwork/java/eol-135779.html), 
less than a year from now.  As such, I'm wondering if we should effectively 
focus on JDK8 rather than 7 and actively work to end our JDK6 support (which 
has already been EOLed for more than a year).  There is a JIRA to support JDK8 
that David and Garry have been working on ( 
https://issues.apache.org/jira/browse/SAMZA-202); it appears the main 
impediment may be Gradle and may already be fixed.

Separately (and in a separate, future thread), I'd like to discuss moving away 
from Scala as the only implementation language for the core Scala classes and 
allowing Java implementations as well.  I've grown quite disillusioned with 
Scala (http://youtu.be/uiJycy6dFSQ sums up my experience
well) and am looking forward to the functional primitives JDK8 provides as a 
partial replacement for the promise of Scala.  Additionally, I'm terrified at 
the prospect of trying to trying to support Scala implementations on JDK8 and 
beyond.  The details for Java-as-well-as-Scala and Java-instead-of-Scala should 
be discussed separately, but either would likely need to be predicated on 
moving to JDK8 in order to not lose the functional approach that has worked 
well in the code.

As such, I'd like to propose moving to JDK8 as soon as we can with that 
platform as the default target.  With JDK7 having less than a year of practical 
shelf life, it'd be better to not find ourselves in the same
6-to-7 issue we have now a year from today.

Thoughts?
-jakob

-----
No virus found in this message.
Checked by AVG - www.avg.com
Version: 2014.0.4592 / Virus Database: 3972/7722 - Release Date: 06/22/14

Reply via email to