Comments (4)
In the beginning there was only Data.Align
with only Align
type-class. Then hierarchy was refactored and all things were put into Data.Semialign
, but the Data.Align
is there for backward-compat (and Data.Zip
for consistency).
I'm not really keen to just remove exports, as that would be breaking change for no reason. If there will be another breaking change, than maybe then would make sense to bundle.
So, I think it would be preferred if each symbol was only exported by one module.
Say that to base
(and ghc-internal
) ;) or about any package having exposed internal modules.
from these.
Sure, I agree with the backwards compatibility concerns. The problem is certainly exacerbated by HLS providing a plethora of similar options.
Well, this is where we're at today (just to put a visual on the ticket):
from these.
The way HLS suggests four options per module is HLS's issue.
from these.
as that would be breaking change for no reason
I would like to politely object to the "no reason" characterization. I believe cleaning up the API is a noble cause, highly valuable for its own sake! As always, this must be weight against all factors, but IMO a clean API is significantly more important than "no reason".
edit: I am also aware that the problem is widespread, including in base
. base
also uses String
everywhere when modern libraries use Text
:-)
from these.
Related Issues (20)
- Equivalence for These HOT 2
- Adding `fromThese` and `toThese` functions HOT 2
- Consideration to add `Universe` and `Finite` instances for `These a b`
- Consider strictness of unzip/unzipWith HOT 1
- Swap/change superclass relationships HOT 1
- Can't compile with GHC 9.2.1 HOT 3
- preferThis/preferThat
- Monoid Instance HOT 6
- CPS version of ChronicleT HOT 3
- Model Crosswalk laws after Traversable
- Newtype to wrap any Semialign into a Semigroup
- Distributivity laws can be simplified
- Loosen bounds on base for GHC 9.6.1 HOT 1
- "unalign can be defined for any Functor" - incorrect? HOT 1
- `Unalign` instances for sequence types? (list, vector, etc.) HOT 3
- Every witherable is a crosswalk
- Bump containers upper bound
- Support GHC 9.10 HOT 2
- Semialign Concurrently HOT 1
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 these.