There are so many options. If one has time to invest in learning one system, which would you recommend? I was about to dive into Effectful
but now I am not sure.
1 Like
Dive into effectful
. I am sure.
4 Likes
I think effectful
and cleff
would be good choices today. It depends a bit on what effects you want, though. Both effectful
and cleff
are essentially a reader-monad with a record of effect handlers, and some clever machinery to thread them around your program as you introduce and eliminate effects. This encoding does limit exactly what effects you can encode - but I think is a good trade-off as the more elaborate control-flow effects can usually be locally recovered by layering on things like ListT
, LogicT
, SearchT
, etc. If you want those in an effects library, fused-effects
might be a reasonable choice though.
4 Likes
I can warmly recommend Effectful.
3 Likes