JEP process and Coin
Brian Goetz
brian.goetz at oracle.com
Thu Oct 6 08:43:33 PDT 2011
There have been a number of questions on this list about the JEP process
[1], and how it relates to Project Coin.
JEP stands for "JDK Enhancement Proposal", and is part of our process
for building a technical roadmap for the Java platform. Filing a JEP
(what we used to called a "one pager") is the first step towards
inclusion of a proposed feature in the JDK.
The JEP process document linked below outlines the states a JEP can go
through, from Draft (we're just talking) to Submitted (I think this is
good enough to review) to Candidate (Group/Area leads think the idea has
enough merit to not toss out) to Funded (someone has actually committed
resources to making it happen.) The last transition -- to Funded -- is
the one at which this goes from being an idea to being part of the plan
for some JDK release.
Note that the JEP process is not exclusively, or even primarily,
intended for Java language changes (the JDK is far bigger than the Java
language!) The bar for language features will remain quite high, and in
reality any language change will require a great deal of funding from
Oracle. Further, significant language changes will also still require a
standalone JSR.
What JEP is not: it is not a "suggestion box" for drive-by requests.
The JEP process is open to JDK *committers*, and it is unlikely a JEP
will gain funding if the author is not prepared to contribute
significant effort to the project's implementation or stewardship.
So, how does this relate to Coin? Not to minimize the substantial
community contribution to Coin, Sun and Oracle still contributed
considerable effort and funding to validating, implementing, and testing
the Coin features that were eventually included in Java SE 7. Had the
JEP process been in place at the time Coin was started, the likely use
would have been that the Coin process selected features for inclusion
through exact same process as was used, and then Sun would have
sponsored and funded a JEP for each of the selected features (just as
Sun stewarded them through the JCP process), and this seems a sensible
model for future Coin-style enhancements.
[1] http://openjdk.java.net/jeps/1
More information about the coin-dev
mailing list