Add Semigroup and Monoid instances for Eff#32
Conversation
This commit allows `Eff` values to be combined via the usual `Applicative`-given instances.
hdgarrood
left a comment
There was a problem hiding this comment.
There's a proof that these are valid at http://www.haskellforall.com/2014/07/equational-reasoning-at-scale.html#appendix-b
Anyone else want to comment or should we just go ahead and merge?
|
Oh, the |
|
Maybe keep the |
|
Let's do this 👍 @matthewleon I think this way is probably better, as |
|
Oh boy, I discovered just now that Eff now has a transitive dependency on ps-control and ps-invariant now, as those are dependencies of ps-monoid: https://github.com/purescript/purescript-monoid/blob/92a0fceefb37fdb17b5d9fb102aa981e6200655b/bower.json A bit disappointing, but just an observation. It should be fixed in ps-monoid library instead. @i-am-tom Did you have any thoughts on this? |
|
I'm not sure - does this cause any issues? Or is the concern just extra packages to install? |
|
@i-am-tom Well, just the extra packages is a bit odd. Take a look at the packages required to do Gotta pull in purescript-control and those fun things! Again, not a problem, really, just a bit disappointing that purescript-control needs to be installed to do the Hello World program. |
|
This is really useful. I was just looking for a semigroup instance for |
|
@paldepind Already has been! :) |
|
The docs need updating :( I believe anyone can do it - you just have to clone the package and run |

This commit allows
Effvalues to be combined via the usualApplicative-given instances. Also updated Pulp so it wasn't still looking for apscexecutable.