Oracle's long-anticipated update includes addition of lambda expressions and shift to functional programming language.
Marking a watershed moment for Java programmers, Oracle today is releasing JDK (Java Development Kit) 8, accommodating lambda expressions and representing a shift in how developers approach the language.
Based on the Java Platform Standard Edition 8 specification, JDK 8 features Project Lambda support allowing for functional programming capabilities. "With Java 8, it's a huge shift in how you code," says Java developer Yoav Landman, CTO at JFrog, which provides tools for managing binaries. With JDK 8's lambdas and method references, the API moves to a functional paradigm, much different from the imperative paradigm Java has used so far. "When you work with functional [languages], you decompose the problem to different functions values, and you pass values between those functions." The program thus becomes easier to debug, says Landman.
JDK 8's lambda capabilities are indeed a big change, and they should be seen as a benefit to parallel programming, says IDC analyst Al Hilwa. "There is no doubt that the change in syntax related to lambda expressions is the biggest new thing in the language and likely to have the most impact in the future. ... However, lambda should be seen as part of a set of features designed to improve the ability of the language to accommodate modern architectures in terms of increasing parallelization in software."