Hi Gilles I can't speak for others, but I agree we would need to remove most of the code that is now available in Java 8. I think [functor] would need more a place for functional code that does not belong to lang, but is still useful to other devs & components.
Bruno On Saturday, 3 August 2019, 1:48:50 am NZST, Gilles Sadowski <gillese...@gmail.com> wrote: Hello Bruno. Le mer. 31 juil. 2019 à 08:05, Bruno P. Kinoshita <ki...@apache.org> a écrit : > > Hi, > > >Or maybe more accurately, Commons doesn't have any libraries for this yet > >(not like we're limited to purely Javahere). > We have the unreleased Commons Functor. I believe this was the intention of > the project, though it lost momentum. The site is outdated: link to the source repository returns 404.[1] > But some interesting code there that could be simplified and released if > there's still interest. >From a quick browsing of the documentation[2], it seems that a large chunk is now covered by the JDK's "java.util.function" package. If so, the first step would probably be a purge of everything that duplicates functionality available in standard classes. It would be most interesting to read what the developers who contributed to that component think.[3] Regards, Gilles [1] https://commons.apache.org/proper/commons-functor/source-repository.html [2] https://commons.apache.org/proper/commons-functor/apidocs/index.html [3] https://commons.apache.org/proper/commons-functor/team-list.html > > Bruno > > On Wednesday, 31 July 2019, 3:59:25 am NZST, Matt Sicker ><boa...@gmail.com> wrote: > > On Tue, 30 Jul 2019 at 08:50, Gilles Sadowski <gillese...@gmail.com> wrote: > > I certainly agree with Gary as to why "Commons" is not there being a > > practical issue (of no concerted road map and lacking developers to > > implement it). However, did I understand correctly that you consider > > such a development to be useless? I.e. rather than updating "Commons" > > do you suggest that application developers should not use it? > > I meant that writing Commons libraries for functional programming > still isn't possible with Java's limited generics and type system. I'm > talking about higher kinded types, dependent types, monads, functors, > etc. While there are some Java libraries out there that attempt to do > this [1] [2], there's no "natural" way to express type classes and > other functional programming concepts in Java. Considering the lack of > Kotlin and Scala libraries in Commons at the moment, I'd conclude that > this isn't the most appropriate place for functional programming > libraries at the moment. Or maybe more accurately, Commons doesn't > have any libraries for this yet (not like we're limited to purely Java > here). > > However, that isn't to say that Commons libraries can't offer anything > useful that relies on lambda functions, streams, completable futures, > etc., but that is a fairly limited subset of functional programming, > and any academic study looking at this should know that due to > familiarity with languages like Haskell where "real" functional > programming tends to take place still. Or maybe I'm misunderstanding > the point of this question entirely. > > [1]: https://www.functionaljava.org/ > [2]: https://www.vavr.io/ > > -- > Matt Sicker <boa...@gmail.com>