Java 8 Point Lambdafication

This is an attempt at helping to gather suggestions and feedback for the library changes that accompany project lambda. Library plans for Java SE 8 fall into three groups:
  • The streams framework. This is the centerpiece, allowing for lazy/parallel bulk operations on collections, arrays, and other aggregates.
  • Point lambdafication. This is the process of adding simple new class and interface methods that do something useful with lambdas. Some examples include: Iterator.forEach(Block) Comparators.comparing(IntMapper) // comparing(Person::getHeight) Logger.log(Factory) The key to being a "point" lambdafication is that it doesn't interact with anything else; it is just a simple/better way to do something you could already do that only involves adding a single new method.
  • Streamification. This is the process of adding stream-bearing methods to existing classes and interfaces. For example: Reader.lines() // returns Stream String.chars() // returns IntStream Random.intStream() // stream of random numbers
We feel we now have adequate input on the Streams framework. What we're looking for is input on point lambdafications that we may be missing. We're looking for the community to help provide suggestions as to what those changes should be. The rubric is not "what would be cool to add", but "what would have made code I've actually written easier to write." Consequently if you can provide concrete examples of the pain that you're suffering without your proposed change then you will significantly increase your chance of being included. NB: there are a lot of methods (like Class.getMethods()) that already return a Collection, array, Enumeration, or Iterator. These are already effectively streamified, since it is easy to turn any of the above into a stream. You should also note that any existing methods that take functional interfaces (for example Runnable, Callable or Comparator) will work out of the box with the Lambda Enhancements and no changes are required to methods that already take functional interfaces. Thanks for helping us improve Java. Brian Goetz and The London Java Community
* Required





Never submit passwords through Google Forms.