purescript-monoid's People
Forkers
joneshf nightra badly-drawn-wizards jonsterling pure11 rightfold jmatsushita megamaddu natefaubion matthewleon cryogenianpurescript-monoid's Issues
separate Zero typeclass from Monoid
I need Zero but not Semigroup for one of my projects: https://github.com/michaelficarra/purescript-filterable/blob/577b4ef73697c1998219193b728a8b2a724a44a0/src/Data/Filterable.purs
add Semiring Disj instance
PR incoming
Generalize Endo to any Semigroupoid/Category
This is more general and especially useful with Star
.
newtype Endo c a = Endo (c a a)
instance Semigroupoid c => Semigroup (Endo c a) where
append (Endo f) (Endo g) = Endo (f <<< g)
instance Category c => Monoid (Endo c a) where
mempty = Endo id
Transformation Monoid
Is it worth including something like newtype Transformation = Transformation (t -> t)
with a Monoid
over composition and mempty = id
?
stack-safe Endo
This would make it safe to foldMap
into an Endo
functor. @natefaubion I recall you making something like this on Slack at some point.
Update dependencies after new release
edit: now toposorted
- purescript-tuples
- purescript-foldable-traversable
- purescript-foreign
- purescript-quickcheck
- purescript-arb-instances
- purescript-maps
- purescript-sets
- purescript-profunctor
- purescript-arrows
- purescript-const
- purescript-bifunctors
- purescript-identity
- purescript-distributive
- purescript-lens
- purescript-transformers
- purescript-lazy
- purescript-channels
- purescript-coproducts
- purescript-generics
- purescript-drawing
- purescript-unfoldable
- purescript-enums
- purescript-datetime
- purescript-lists
- purescript-inject
- purescript-free
- purescript-angular
- purescript-graphs
- purescript-jquery
- purescript-handlebars
- purescript-machines
- purescript-strongcheck
- purescript-argonaut
- purescript-base
- purescript-mongodbf
- purescript-node-fs
- purescript-oo-ffi
- purescript-parsing
- purescript-pattern-arrows
- purescript-sammy
- purescript-string-parsers
- purescript-yaml
- purescript-yargs
Rename mempty
Sounds un-PureScript-y. @garyb suggested leaving Plus
as is and picking something here when modules get renamed.
Add `Additive` and `Multiplicative` monoids
Should we release as v0.2.0
after this, or just v0.1.6
? The latter has the advantage of us not having to rerelease that massive list of things I mentioned in the issue about Num
, but as this will require a new version of the compiler it sort of is a breaking change.
Unfoldable instances
Should there be Unfoldable
instances for the Monoid
newtype
s?
Add CommutativeMonoid
It might be useful to add a CommutativeMonoid
superclass of Monoid
. This came up in the discussion here: purescript/purescript-prelude#87. It would not introduce any new operations, but require <>
to be a commutative operation.
On the other hand, I currently cannot think of any function that would make use of the CommutativeMonoid
constraint ๐
Note that another option would be to add CommutativeSemigroup
and let CommutativeMonoid
be derived from CommutativeSemigroup
and Monoid
.
mconcat?
Do you think this library should include a function mconcat :: Monoid a => [a] -> a
, like Haskell's? I'd be happy to put a pull request together if so.
Pursuit documentation for 3.1.0
I only see 3.0.0 on Pursuit, and links from other modules are currently broken -- for examplefrom https://pursuit.purescript.org/packages/purescript-foldable-traversable/3.4.0/docs/Data.Semigroup.Foldable#v:foldMap1
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.