Yeah, Commons libraries are almost intentionally behind the times in order
to provide functionality to the most people. Sometimes, Java even adds
things that make a Commons library somewhat redundant in theory (like NIO2
from Java 7 which could theoretically replace Commons VFS as an API).

I can also say that personally, I can’t even think of a good Commons
functional programming library that would be possible with the current
limitations of the Java type system. Scala and now even Kotlin have a lot
of interesting libraries in that space.

On Tue, Jul 30, 2019 at 06:39, Gary Gregory <garydgreg...@gmail.com> wrote:

> Fernando,
>
> In general, it feels to me the Apache Commons community is split and slow
> moving to adopt newer version of Java. Currently, updating the platform
> requirements of a component to Java 8 causes some people to react with
> "What about people running on Java 7?!" comments, or "What Java 8 features
> are required? Why update Java if we don't need to?". Others, like me, would
> prefer to move to Java 8 as the base version for all components, and build
> on that, showing contributors that we are set up to accept code that
> use modern language constructs like lambdas. We've had to reject or rework
> some PRs because they depended on Java 8 APIs when the component was still
> on Java 7, not a great position IMO.
>
> Argument for whether or not lambdas "improve readability" or  is a debate I
> care not to enter ;-)
>
> Gary
>
> On Tue, Jul 30, 2019 at 4:54 AM <f.petru...@virgilio.it.invalid> wrote:
>
> > Dear Developers,
> >
> > we are members of the ZEST research group (Zurich Empirical Software
> > Engineering Team) based at the University of Zurich and the Delft
> > University of Technology. We are conducting an investigation on the
> > diffusion of innovations and we focus on the adoption of new language
> > features. Our research is focused on how API producers adapt their
> > interfaces to introduce support for Java 8’s lambdas. During the course
> of
> > our investigation, we manually inspected commons-collections,
> commons-text,
> > and commons-lang’s source code and documentations to understand whether
> > Java’s lambdas have widespread adoption. We would like to have your
> > feedback on our findings.
> >
> > Our study focuses primarily on Functional Interfaces and Lambda
> > Expressions as these new features were introduced by the Java language
> and
> > adopted the Java JDK API, as they reduce implementation complexity,
> improve
> > readability, offer performance benefits and improve security
> > contextualization.
> > Our analysis showed that though commons-collection 4.2, commons-text 1.7,
> > and commons-lang3 3.9 did not explicitly introduce support for functional
> > interfaces (e.g. by using the @FunctionalInterface annotation). We
> noticed
> > that the APIs provide compatibility with Java 8+ features, including
> lambda
> > expressions (since the APIs’s build platform is now on JDK 1.8+). We
> would
> > like to better understand as to why no major change was necessitated to
> > facilitate the usage of lambda expressions with the API.
> >
> > In most cases, developers choose to move to new releases to satisfy
> > particular dependency requirements, to take advantage of new Java
> features
> > (like streams and functional interfaces in the case of Java 8), or just
> to
> > standardize their implementation to align the API with the Java JDK API.
> > Can you provide us with more information about this?
> > How did you and your team tackle the choice to change the version of Java
> > supported?
> > Which factors did you take into account when doing this?
> > Are there any documented sources (e.g. Jira tickets, or issue tracker
> > issues) about that discussion you can provide us with?
> > Why were no explicit changes made to the interface to support lambda
> > expressions?
> > Are there any future plans in place to make larger changes to the API
> such
> > that lambda expressions would be supported?
> >
> > We thank you for taking the time to answer our questions. If you would
> > like to be posted about the results of this study, please let us know!
> >
> > Kind Regards,
> > Fernando Petrulio.
> >
> >
> > [photo-logo]
> > Fernando Petrulio
> > PhD Student University of Zurich UZH
> > Department of Informatics
> >
> > [linkedin] https://www.linkedin.com/in/fernando-petrulio
> >
>
-- 
Matt Sicker <boa...@gmail.com>

Reply via email to