Skip to main content

Recent JEP Updates: Fence Intrinsics, DocLint, Retire 3 GC Combinations, Nashorn

Posted by editor on January 20, 2013 at 2:51 PM PST

JDK Enhancement Proposals (JEPs) are a public record of proposals for updating and enhancing the OpenJDK. JEP 1, the JDK Enhancement-Proposal and Roadmap Process, created in 2011, describes the "process for collecting, reviewing, sorting, and recording the results of proposals for enhancements to the JDK and for related efforts, such as process and infrastructure improvements." If you're interested in tracking what's happening with respect to JDK enhancement via a compact, formal set of documents, following JEPs as they're updated is a good way to do it.

The four latest JEPs (171-174), all created in November, provide an interesting look at some of the thinking that's going into OpenJDK planning and development right now.

JEP 171: Fence Intrinsics

JEP 171: Fence Intrinsics was created by Doug Lea. This JEP proposes to "Add three memory-ordering intrinsics to the sun.misc.Unsafe class." So, what's this really about? If you read further into JEP 171, you find that this enhancement is largely related to the evolution of memory and hardware, both recent innovations and the cumulative changes that have taken place since Java was created a couple decades ago. Specifically, the JEP will address the problem that "JVMs don't have advertised mechanisms providing memory orderings that were not envisioned originally or in the JSR 133 memory model specs." Just for reference, JSR 133 was finalized in 2004. Indeed, a lot has changed since then.

JEP 172: DocLint

JEP 172: DocLint was authored by Jonathan Gibbons. Its purpose is to "Provide a means to detect errors in Javadoc comments early in the development cycle and in a way that is easily linked back to the source code." Essentially, intelligence will be added to the javadoc tool to detect some of the more common errors in Javadoc comments entered by developers (for example, bad syntax, bad HTML, bad references). The result will be improved Javadoc documentation, and reduced propagation of erroneous documentation forward into new releases.

JEP 173: Retire Some Rarely-Used GC Combinations

JEP 173: Retire Some Rarely-Used GC Combinations, authored by Bengt Rutisson, seeks to "Remove three rarely-used combinations of garbage collectors in order to reduce ongoing development, maintenance, and testing costs." Specifically, garbage collection combinations DefNew + CMS, ParNew + SerialOld, and Incremental CMS will be removed, because they "add extra complexity to the GC code base and consume valuable testing resources while adding very little value to the users."

JEP 174: Nashorn JavaScript Engine

JEP 174: Nashorn JavaScript Engine, created by Jim Laskey, is one of the most talked about OpenJDK enhancements in recent months. The objective is to "Design and implement a new lightweight, high-performance implementation of JavaScript, and integrate it into the JDK." Nashorn is a significant enhancement to the JDK. The motivation behind Nashorn is:

The performance of Rhino has fallen far behind that of other JavaScript engines. In order to improve performance, at this point Rhino would have to be rewritten to replace its interpreter with a code generator designed to fully utilize the JVM. Rather than undertake a major rewrite of the very old Rhino code, we have chosen instead to start from scratch.

Significant Nashorn features will include:

  • based on the ECMAScript-262 Edition 5.1 language specification
  • javax.script (JSR 223) API support
  • support for invoking Java code from JavaScript and for Java to invoke JavaScript code, including direct mapping to JavaBeans
  • a new command-line tool, jjs, for evaluating JavaScript code

jep-changes email list

If you'd like to know when a new JEP is created, or when a JEP is updated, subscribe to the jep-changes OpenJDK email list. Weblogs

Since my last blog post, there have been several new blogs:


Our latest article from Manning Publications is Operator Overloading by Chris Buckett, author of the Manning book Dart in Action.


Our current poll asks you to respond to the prompt, In 2013, my own work will be most affected by new developments related to... Voting will be open until Friday, January 25.


Here are our latest Spotlights.