I’ve been working for several weeks on Yet Another Haskell Effect System. In this model, effects are literally just typeclasses! I’ve been using this `Can` constraint to make things feel a little more like other effect systems, but I’m starting to wonder if it’s actually useful.
Conversation
Hey, have you checked out polysemy library (hackage.haskell.org/package/polyse)? It has similar(not exactly mean same) type notation to express effects. :)
1
I have! polysemy is closely related to the freer family of libraries, which provides a `Member` constraint. My library, however, is much faster. :)
2
5
Sounds really cool! How does it compare to fused-effects?
It’s simpler and slightly faster but slightly less expressive (though not in ways I personally find important). Otherwise there are a lot of similarities… it’s heavily inspired by fused-effects, but it reformulates a lot of the concepts to better cooperate with the optimizer.
2
1



