@@ -12,7 +12,7 @@ Main features:
1212
13131. Very fast.
1414
15−2. Internals of the library are easy to reason about.
15+2. Internals of the library are reasonably easy to reason about.
1616
17173. Correct semantics in presence of runtime exceptions (no more lost or
1818 discarded state).
@@ -24,7 +24,7 @@ Main features:
2424
2525 - static dispatch (as fast as it gets, single interpretation) or
2626
27− - dynamic dispatch (slower, multiple interpretations are possible),
27+ - dynamic dispatch (a bit slower, with multiple interpretations),
2828
2929 depending on your needs.
3030
@@ -51,14 +51,13 @@ However, `eff` uses delimited continuations underneath, which:
5151proposal](https://github.com/ghc-proposals/ghc-proposals/pull/313) for including
5252support for them has been accepted).
5353
54−- Are somewhat hard to understand.
54+- Are quite hard to understand.
5555
56−- Make the space of possible effects "too big", i.e. some of their interactions
57− might no longer make sense. For example, there is no `MonadWriter` instance
58− for the `ContT` transformer in the `mtl` library, because [it can't be
59− properly
60− implemented](https://www.reddit.com/r/haskell/comments/hai9kb/why_is_there_no_monadwriter_for_contt_in_mtl/). It's
61− not clear how `eff` can detect and prevent such interactions.
56+- Make the library "too powerful" in a sense as it faces
57+ [a](https://github.com/hasura/eff/issues/13)
58+ [few](https://github.com/hasura/eff/issues/7)
59+ [issues](https://github.com/hasura/eff/issues/12) with no clear path towards
60+ their resolution.
6261
6362On the other hand, if support for continuations is excluded from the handler
6463monad, then the ability to define effects with non-linear control flow (such as
@@ -71,7 +70,7 @@ dedicated, well established solution such as
7170
7271This is where `effectful` comes in. The `Eff` monad it uses is essentially a
7372`ReaderT` over `IO` on steroids, allowing us to dynamically extend its
74−environment with data types that represent effects.
73+environment with data types that represent effects or their interpreters.
7574
7675Because this concept is so simple:
7776