In my experience, implementing a Ports and Adapters architecture is a Sisyphean task. It requires much diligence, and if you look away for a moment, the boulder rolls downhill again.
- https://overreacted.io/algebraic-effects-for-the-rest-of-us/
- https://homepages.inf.ed.ac.uk/gdp/publications/alg_ops_gen_effects.pdf
- https://www.microsoft.com/en-us/research/wp-content/uploads/2016/08/algeff-tr-2016-v2.pdf
- https://github.com/ocamllabs/ocaml-effects-tutorial
- https://kcsrk.info/papers/eff_ocaml_ml16.pdf
- https://typelevel.org/cats-effect/
- ConcurrentEffect