Private interface methods in Java 9

Starting in JDK 9 build 54, compiler support for private interface methods have been resurrected. This was one feature that was planned for Java 8 and did not make the final cut. It is now part of JEP 213. The primary motivation for this proposal is to enable code sharing between non abstract methods in … Continue reading Private interface methods in Java 9

Java 8 – This ain’t your grandpa’s Java

Java 8 adds support for bulk data operations (JEP 107) in the Collections library. It is unlikely every forms of bulk data operations will be added to the retrofitted Collections framework, but the language designers are making every possible effort in accommodating general use cases of "filter/map/reduce for Java". Libraries should make use of parallelization … Continue reading Java 8 – This ain’t your grandpa’s Java

Project Kotlin, a new JVM language to rescue Java developers?

Last week, JetBrains announced their new statically typed language Kotlin at the JVM Language Summit. Kotlin joins the elite group of statically typed languages : Scala, Gosu, Ceylon, Fantom, targeted to run on the JVM. Scala is the most mature in this statically typed landscape. Fantom supports static and dynamic typing, so it may not … Continue reading Project Kotlin, a new JVM language to rescue Java developers?

Aggregate operations, the Lambda Goodness in Java

One of the primary uses of Lambda expressions is to implement aggregate operations that can often be parallelized using multi-core processors we have today. The computation over bulk data structures is an area where Lambda expressions provide much needed support where part of the computation is caller defined. Doug Lea's JSR166y Concurrency interest group exactly … Continue reading Aggregate operations, the Lambda Goodness in Java

Lambdas in Java, Plan B in action

Recently, Brian Goetz published modified draft of the Lambda proposal. This draft is mature in terms of the direction where Lambda is heading for in the Java world and introduces some breaking changes from earlier draft to align with this direction. While there are few things that need to be sorted out, this draft is … Continue reading Lambdas in Java, Plan B in action

Introducing Try With Resources, can project Coin become crown jewel of Java 7?

Try-with-resources (originally known as Automatic Resource Management) is one of the Project Coin proposals that made its way into recent JDK 7 builds. Traditionally, developers had to manually terminate any resources (Files, Database connections, etc) they use in their applications and sometimes it was painful to keep track of those things and failing to do … Continue reading Introducing Try With Resources, can project Coin become crown jewel of Java 7?

Garbage First (G1) GC debuts with Java SE 6 update 14

Tony Printezis provided some insight into G1 in JavaOne last year. Now, we can see G1 in action with the latest JDK 6 builds. HotSpot JVM features this new collection mechanism in the recent Java SE update 14 early access builds (since b02). It is not enabled by default as this is still an experimental … Continue reading Garbage First (G1) GC debuts with Java SE 6 update 14