The original name of the repository I created was https://github.com/ocaml-multicore/eioio to reflect that it was ‘parallel effect-based eio’, but wiser heads (@talex5) prevailed and it was renamed Eio for succinctness ;-)
In my head, I’m still trying to come up with an excuse to have ocaml/aeiou (asynchronous effect-based IO in userspace?)
It took me several reads of that README to really get much of an idea about eio. I think there are a couple of discussions on discuss.ocaml.org that really help understand the model and api decisions.
I feel like not using the name eieio was a missed opportunity…
You mean the “Enhanced Implementation of Emacs Interpreted Objects”? https://www.gnu.org/software/emacs/manual/html_node/eieio/
The original name of the repository I created was https://github.com/ocaml-multicore/eioio to reflect that it was ‘parallel effect-based eio’, but wiser heads (@talex5) prevailed and it was renamed Eio for succinctness ;-)
In my head, I’m still trying to come up with an excuse to have ocaml/aeiou (asynchronous effect-based IO in userspace?)
It took me several reads of that README to really get much of an idea about eio. I think there are a couple of discussions on discuss.ocaml.org that really help understand the model and api decisions.
A discussion that largely focus on capabilities in eio: https://discuss.ocaml.org/t/eio-0-1-effects-based-direct-style-io-for-ocaml-5/9298
An update with links to common libraries with eio backends, in particular the cohttp port is worth reading as it’s pretty straight forward. https://discuss.ocaml.org/t/update-on-eio-effects-based-direct-style-io-for-ocaml-5/10395