Java 9 features eyed as Oracle marks Java's 20th anniversary

Java was released 20 years ago this week, but Oracle isn't only looking back. Java 9 is due for release in 2016 with a variety of new features, including some from the OpenJDK project.

This week marks the 20th anniversary of Java's release to users. Over the past two decades, Java has become one of the most popular software development platforms, and Oracle is looking to maintain that status by keeping the technology moving forward. It's currently working on both a Java 8 update and Java 9, a new edition due to be released in 2016

"We're constantly working on parallel trains of releases," said Georges Saab, vice president of software development for Oracle's Java platform group. Right now, making Java more interactive and cloud-ready are high priorities for Oracle. However, two of the features that Saab thinks will distinguish Java 9 are coming not from Oracle directly, but from the OpenJDK project, the Java developers' community set up to create and maintain an open source implementation of the Java Platform Standard Edition software. Saab pointed to Project Jigsaw and JShell, saying Oracle plans to make some of the OpenJDK Community's projects part of its Java 9 release.

Project Jigsaw, according to the OpenJDK website, has four primary goals: making the Java platform more easily scalable down to smaller systems and devices, improving security and maintainability, enabling improved application performance and making it easier for developers to build and maintain libraries and large applications. Saab said the Jigsaw technology would bring increased modularity to Java 9 and Oracle's Java Development Kit, the basis for the OpenJDK implementation.

In addition, Saab sees Jigsaw as a good opportunity address some of the feedback Oracle has gotten related to Java's footprint. He said it will also provide faster start-up and warm-up times on Java execution processes through optimization of the language's just-in-time compiler. "One of the promises of the module system," Saab said, "is that some of [the problems of a new application] can be addressed in pre-performance."

The JShell project will make a read-eval-print loop (REPL) feature part of Java 9. A REPL is an interactive programming function that takes in and evaluates user inputs and then returns a value or a description of the state change caused by the inputs. Saab said JShell will allow users to "type snippets of Java directly into the command line and evaluate [them] on the fly."

With the popularity of REPL approaches in Python and Ruby on Rails, users have been requesting that the capability be included in Java, according to Saab. He said now is a good time to add the REPL functionality, because it fits well into the style of development used for the cloud. Increased cloud-readiness has been a theme for Java releases starting with Java 7, he noted, and that will continue in Java 9.

Jessica Sirkin is associate site editor of SearchOracle. Email her at [email protected] and follow us on Twitter: @SearchOracle.

Next Steps

Learn about the new way of representing values that could become part of Java 9

Find out what trends are predicted for this year in Java

Is JShell the new Java 9 REPL?

Why Oracle's chief architect is excited about JShell

Dig Deeper on Oracle Java and J2EE