joshburgess / effects-playground

:dart: Learning different effect systems by example

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

effects-playground

Learning different effect systems by example

Higher-order effects

  • fused-effects: a fast, flexible, fused effect system.
  • polysemy: higher-order, no boilerplate, zero-cost monads.

Distributed effects

  • transient: distributed, concurrent and parallel computations as primitives.

Other effects

  • capability: Standard capability type classes for extensional effects.
  • rio: aka ReaderT + IO.

Classic effects

  • Tagless Final: aka final encoding
  • MTL: Monad Transformers Library

About

:dart: Learning different effect systems by example

License:Apache License 2.0


Languages

Language:Haskell 100.0%