Open emilypi opened 4 years ago
we could name it something else like
Ior
for "inclusive or" to avoid this.
I am strongly in favor of names that facilitate Eeyore puns
Omg I never noticed that until now. I always say "eye-or" not "ee-or"! 😆
Hi, just a suggestion that would perhaps ease the merging would be to implement instances for https://hackage.haskell.org/package/assoc (because this is how it's done in the these
package), so for example:
-- Data.Smash
import Data.Bifunctor.Swap
import Data.Bifunctor.Assoc
instance Swap Smash where
swap = swapSmash
instance Assoc Smash where
assoc = reassocLR
unassoc = reassocRL
-- Data.Can
import Data.Bifunctor.Swap
import Data.Bifunctor.Assoc
instance Swap Can where
swap = swapCan
instance Assoc Can where
assoc = reassocLR
unassoc = reassocRL
-- Data.Wedge
import Data.Bifunctor.Swap
import Data.Bifunctor.Assoc
instance Swap Wedge where
swap = swapWedge
instance Assoc Wedge where
assoc = reassocLR
unassoc = reassocRL
Feel free to ignore the suggestion, of course, just thought it may help. Have a nice day :)
Another alternative is https://github.com/masaeedu/monoidal, which has those classes plus a few more
Let's complete the picture and just add
These
here. Here is the following checklist:these-skinny
datastructures and basic functionalities intosmash-core
.Ior
for "inclusive or" to avoid this.these
library).