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 … Read moreJava 8 – This ain’t your grandpa’s Java

Lambda expressions in Java 8 adopts C# style syntax

Almost a year later since publishing the original Lambda proposal, JSR 335 EG has finally decided to adopt C# style syntax for Java 8 Lambda expressions. Brian has outlined the formal model for the new C# style syntax in his mail to lambda-dev: lambda = ArgList Arrow Body ArgList = Identifier | “(” Identifier [ … Read moreLambda expressions in Java 8 adopts C# style syntax

Annotation type to reduce varargs warnings available in b123, Java 7 Coin minting done?

The improved varargs warnings, part of the Coin proposal finally made into the latest JDK 7 build. I believe build 123 is special as this milestone marks the completion of all the planned JSR 334 features (the head side of the Coin) scheduled for implementation in Java SE 7. So, Coin minting done? I think … Read moreAnnotation type to reduce varargs warnings available in b123, Java 7 Coin minting done?

Parallel Looping Constructs in Java: Lambda expressions to the rescue?

Last November, Mark Reinhold announced that Closures will be added to the Java language and six months later we had an initial prototype based on the Straw-Man proposal and last month’s update was considered a significant progress for the language in years. As mentioned in Mark’s post, “Working with parallel arrays in Java, unfortunately, requires … Read moreParallel Looping Constructs in Java: Lambda expressions to the rescue?

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 … Read moreAggregate 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 … Read moreLambdas in Java, Plan B in action

Rest of Project Coin explored, advantage Java 7

Project Coin includes the following proposals that will make into Java 7. – Binary literals and underscores in literals – Strings in switch – Simplified Varargs Method Invocation – Improved Type Inference for Generic Instance Creation (Diamond) – Improved Exception Handling for Java – try-with-resources (ARM) I have briefly touched upon try-with-resources construct in my … Read moreRest of Project Coin explored, advantage Java 7