Comments (2)
I understand your confusion caused by us forking freer
, however, I'm not convinced that it's a good idea to reserve such prominent place, in the documentation, for package politics. README already contains Acknowledgements section that clearly states that this package started as a fork of freer
.
If you think that something should be added, to clear things up, then send us a PR. We'll be thankful for anything that can help users when picking up freer-effects
.
Disclaimer: This is just my personal opinion.
I wasn't part of the original discussion with Allele, but as I understand it, she is unable to invest (unpaid) time into freer
. However, she still wants to retain the complete ownership, and the name of the package. She has right to both, of course, but for us it was unacceptable. We were already using freer
, and having no way of getting changes upstream forced us to fork it. For this reason we have no plan on merging back into freer
. Things may change in the future, but I'm not keeping my hopes up. The longer this situation lasts, the harder it would be, and we've already started to accept incompatible changes, which would make it already quite non-trivial.
Regarding our usage of freer
, and freer-effects
:
- There is still not much difference, from user perspective, between these two, and our transition to
freer-effects
was seamless. - We do have performance constraints, but we are able to differentiate between places where it's essential, and where more abstract tools provide much better cost / performance ratio.
- Transformers and MTL are still used heavily, and I don't think it's reasonable to completely switch to effects. At least not until it's as fast as transformers. Interestingly, PureScript compiler is able to create faster code for them than for monad transformers.
- I think that we would have performance issues if we've switched to something like
extensible-effects
, but that is just my unproven conjecture. - Before we've adopted
freer
, we've made few prototypes in various effect implementations, andfreer
won due to its nice API. You might be also interested in PR #19, which added benchmarks comparingfreer-effects
andextensible-effects
.
Hopefully I was able to clear some things up for you. If there is still anything unclear then feel free to ask. Maybe my colleagues will add their points of view as well.
from freer-effects.
I understand your confusion caused by us forking freer, however, I'm not convinced that it's a good idea to reserve such prominent place, in the documentation, for package politics.
Well I'm really not interested in politics, but for me the first thing I would have liked to see is something like "freer-effects is a maintained fork of the Allele Dev's freer package which is an implementation of Oleg's blah blah...". That's the single most important piece of context for a newcomer imo. I think that combined with the changelog is enough.
Thanks for the comments, I'll send you a PR with more benchmarks if I end up exploring the package more.
from freer-effects.
Related Issues (20)
- Deal with half-baked effects: Coroutine, CutFalse and NonDet HOT 7
- Create module for NonDetEff consider also renaming the effect
- Specifying portability as POSIX doesn't make sense
- Is it possible to write a continuation effect? HOT 7
- Use OpenUnion51
- TemplateHaskell for convenience funtions HOT 2
- Tests, examples, and benchmarks have missing bounds on dependencies
- Publish version 0.4
- Control.Monad.forever causes <<loop>> HOT 2
- Raise upper bound for hlint
- Using state requires type signature
- Active maintenance? HOT 12
- Functor/Foldable/Traversable/Applicative instances for Union?
- Generalise FTCQueue to work over arbitrary Arrow types
- Include remarks from (or compare to) extensible-streaming
- build failure: NonDet not in scope HOT 5
- Relax type signature of asks function
- Rename Data.Open.Union to Data.OpenUnion
- Publish version 0.3 on Hackage and Stackage HOT 3
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from freer-effects.