Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

What is the difference between this library and ramda-adjunct? #148

Open
Restuta opened this issue Jun 17, 2019 · 4 comments
Open

What is the difference between this library and ramda-adjunct? #148

Restuta opened this issue Jun 17, 2019 · 4 comments
Labels

Comments

@Restuta
Copy link

Restuta commented Jun 17, 2019

I think it benefits the community to know that alternatives exist and which to pick when. It would be nice to create a short summary comparison in readme.med that highlights differences between ramda-extension and https://github.com/char0n/ramda-adjunct or maybe even join efforts?

@tommmyy
Copy link
Owner

tommmyy commented Jun 17, 2019

Hi, thank you for you question.
Have you read https://github.com/tommmyy/ramda-extension#why-to-choose-ramda-extension-over-other-libraries yet?

@Restuta
Copy link
Author

Restuta commented Jun 17, 2019

@tommmyy thank you for the speedy reply. Yes I did read this before posting a comment. I think a few things are still unclear:

  • what is the benefit of having this philosophy of using point-free Ramda functions? I can infer some benefits, but I think it would benefit the community if they come from authors and explicitly stated. It could be very unclear to beginners and frankly somewhat unclear for me as well.
  • given above benefits how do we weight those and make a decision which library to use when on a practical day-to-day level?

Appreciate your help 🤝

@tommmyy
Copy link
Owner

tommmyy commented Jun 18, 2019

@Restuta

  • ad 1) It was our goal from the start. Use just functions from Ramda to develop our own. I believe that Ramda is all you need for your utilities. And for myself is an extra challenge to learn think functionally.
  • ad 2) I know several teams that use Ramda and Ramda-extension daily. As for myself, I use it for developing large intranet applications built on top of React and Redux.

I think that Ramda can save you a lot of lines of code so I use it. And when there something more general we try to include it here. Sadly lots of libs use either lodash or adjunct that develops a lot of their own code that is not necessary.
In that philosophy, we cooperate with other OS libs.

See:

https://github.com/lundegaard/redux-tools
https://github.com/lundegaard/validarium
https://medium.com/@tyna.kamenicka/why-are-we-not-afraid-to-think-functionally-with-ramda-fb17f733fde8#c898-5ab767b22b17
https://tommmyy.github.io/ramda-react-redux-patterns

@aizerin
Copy link
Collaborator

aizerin commented Jun 18, 2019

Besides that, it is also fun :) Some functions may be hard to understand and some may be totally unreadable. But the point is that you don't need to understand internals in a declarative way.

We just said to ourselves that it will be fun to write JavaScript library without the "JavaScript" :)

I think that maybe over 90% of functions comes from our production projects. We are aware of some performance impact of our point-free implementation, but it is not a big deal. If someone had concerns about the performance, then for loop will be always faster in javascript.

@aizerin aizerin pinned this issue Jun 19, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants