Yes, there is. I have a work-in-progress implementation of that at GitHub - tomjaguarpaw/bluefin-style-effectful: Bluefin-style effectful. Specifically, the applyHandle
and withHandle
functions convert between implicit type class style and explicit handle style. Native effectful effects are wrapped in Handle
to become value-level handles. So, for example, you can convert between effectful and Bluefin-style State
operations and handlers. N.B. This doesn’t allow interoperation between effectful
and bluefin
. Rather, it’s a value-level (Bluefin-style) API for effectful
.
It’s going to take a bit of thinking to work out how to get the interop to be seamless, because effectful uses OverlappingInstaces
to manage its type level effects whereas Bluefin needs IncoherentInstances
. I had to define my own :>
.
Is this project something you’d be interested in collaborating on, by any chance?