Our great sponsors
-
hierarchical-free-monads-the-most-developed-approach-in-haskell
Big article about Hierarchical Free Monads, the most developed approach to build real software in Haskell
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
Thanks for this illuminating reply. I agree that separation of concerns is very valuable, and that the effect frameworks I've mentioned in my question are better than mtl at it. However, would you agree that separation of concerns can also be achieved by other means that these effects frameworks, i.e. using the so-called tagless final style or other blends of free monads, such as for instance hierarchical free monads?
However, I am an academic/hobbyist user, so I am naturally more inclined to use bleeding edge technologies. And I think a shift will come when delimited continuation primops are implemented in GHC, which will make effect libraries more performant than other approaches. After that there will surely be some time for all effect libraries to adapt and then we'll see which one gets the most traction.
You may also be interested in effet, which is an mtl-like effect system which tries to overcome the limitations of mtl.