Helper classes

Maurizio Cimadamore maurizio.cimadamore at oracle.com
Mon Apr 15 02:55:34 PDT 2013


I think it sounds sensible - but we are currently experiencing technical 
difficulties in trying out different approaches because of several 
code-generation related issues when lambda and method references are 
mentioned within static interface methods (some of those issues have 
also been reported on this very list). As soon as those issues will be 
addressed, we will have a better understanding of what can and cannot be 
done.

Thanks
Maurizio

On 15/04/13 09:53, Stephen Colebourne wrote:
> Currently, Project Lambda has a number of helper clases, notably
> Collectors and Streams, which are clearly related to the interface.
> Since JDK8 has static methods on interfaces, are there plans to move
> the static methods to the interface?
>
> This would allow methods such as  intBuilder(), emptyIntStream() and
> singletonIntStream(int t) to be on IntStream rather than on Stream,
> and thus have the simpler names of builder(), emptyStream(),
> singletonStream().
>
> Making the change might also affect some method names, as sometimes
> they read differently, or are otherwise confusing, when on the
> interface.
>
> As a note, on JSR-310, we did move the methods from similar static
> helper classes to the interfaces:
> http://hg.openjdk.java.net/jdk8/tl/jdk/file/f4d50e8cc9e2/src/share/classes/java/time/temporal/TemporalAdjuster.java
> http://hg.openjdk.java.net/jdk8/tl/jdk/file/f4d50e8cc9e2/src/share/classes/java/time/temporal/TemporalQuery.java
> although I'm not sure that counts as precedent yet.
>
> Stephen
>



More information about the lambda-dev mailing list