purefun icon indicating copy to clipboard operation
purefun copied to clipboard

Are you using purefun? Please tell me how!!

Open tonivade opened this issue 4 years ago • 2 comments

If you are using purefun, It would be awesome if you tell me how you are using it.

  • Environment:
  • Purpose:
  • Which features are you using:
  • Which features do you miss:

If you want to help me, please write a comment to this issue with this information.

Thanks a lot!

tonivade avatar Oct 08 '19 10:10 tonivade

Discovered purefun not so long ago and while not using purefun, but found it very interesting, especially as a source of inspiration. The main reason for not adopting it for my projects is the same as for the majority of other functional libraries for Java - focus on functional terminology and "functional for the sake of functional" attitude. While it's a lot of fun and fascinating, at the same time, this attitude makes the library basically not approachable for the vast majority of Java devs with mostly imperative background. By the way, you might find interesting to take a look into my implementation of basic monads like Option, Result and Promise. In particular, my implementations of Option and Result do not use branching and this makes them exceptionally performant (for example, Option has same or better performance than regular null check). Another difference is the use of tuples exclusively as a set of function call parameters, i.e. access to tuple components is not supported (and overall tuples are rather a technical detail rather than a user-facing feature). Instead, all tuple components can be applied to a provided function. Finally, I don't see in your implementation such a convenient tool as Option.all() (and Try.all()) for different number of parameters. I found these static methods extremely useful in real applications.

siy avatar Dec 01 '23 11:12 siy

Thanks a lot for your feedback. I will take a look to your implementation. Kind regards!

tonivade avatar Dec 01 '23 15:12 tonivade