Our great sponsors
- Onboard AI - Learn any GitHub repo in 59 seconds
- InfluxDB - Collect and Analyze Billions of Data Points in Real Time
- SaaSHub - Software Alternatives and Reviews
-
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
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.
-
Onboard AI
Learn any GitHub repo in 59 seconds. Onboard AI learns any GitHub repo in minutes and lets you chat with it to locate functionality, understand different parts, and generate new code. Use it for free at www.getonboard.dev.
-
You may also be interested in effet, which is an mtl-like effect system which tries to overcome the limitations of mtl.