Eio 0.1 - effects-based direct-style IO for OCaml 5

I’m kind of repeating myself, but this is what I think we should aim for: composable primitives.

At that point in time, I will be suspicious of anything that will want to take over my main loop or invert control in invasive ways. I want a certain degree of freedom on how my application is to be structured, if only to experiment new ways effects could give me.

Also one thing that I think is not stressed enough is that most code out there should actually not use concrete effects or effectfull primitives at all.

I have been waiting for effects for the past 7 years precisely so that I don’t have to use them. They eventually allow the separation of concerns I was seeking for: most library codec code should not be concerned about how you move data in and out: that’s for the application to decide, using any kind of effects it finds desirable.

In that respect developing and offering simple standard abstractions in the Stdlib like I mentioned in this message which are effect friendly without mentioning any of them are more important to me than deciding on concrete effects.

Basically I think there’s the need for infrastructure and patterns so that effects can be used in a compositional way and that using something like eio or not rather becomes a matter of application choice.

7 Likes