- 06 Mar, 2018 1 commit
-
-
Michael Snoyman authored
-
- 25 Feb, 2018 1 commit
-
-
Ryan Scott authored
-
- 24 Feb, 2018 1 commit
-
-
Ryan Scott authored
-
- 11 Feb, 2018 1 commit
-
-
* More consistent generalBracket implementations The behavior is identical to before, but since I'm about to use these instances in the docs, I wanted to raise less confusing questions to readers about implementation. * Docs explaining generalBracket implementation
-
- 28 Jan, 2018 1 commit
-
-
* Demonstrate broken ExceptT instance for MonadMask * Simplify generalBracket so it works for ExceptT The previous type signature was in fact invalid, as it did not allow for a valid instance for ExceptT (et al). In particular, in the case of a non-exceptional Left result, neither the release nor cleanup functions could be used, since: * No result value was available for release * No SomeException value was available for cleanup It appears that this less pleasing version of generalBracket is the only one that works for all the types we care about. Furthermore: once we accept this, we are now forced to perform some discarding of updated state and Monoid written values in the StateT, WriterT, and RWST instances. This seems inherent to making things compatible with ExceptT. An alternative to this is to simply remove the ExceptT and ErrorT instances, but that's contrary to what many users want it seems. * Doc cleanups @RyanGIScott's review
-
- 16 Jan, 2018 1 commit
-
-
Fix compilation with GHC 8.4.1. Tested with GHC 8.4.1-alpha1.
-
- 12 Jan, 2018 1 commit
-
-
Ryan Scott authored
-
- 11 Jan, 2018 2 commits
-
-
Ryan Scott authored
-
Ryan Scott authored
-
- 22 Nov, 2017 1 commit
-
-
Ryan Scott authored
-
- 29 Jun, 2017 2 commits
-
-
Edward Kmett authored
Add generalBracket to MonadMask
-
Michael Snoyman authored
-
- 16 Jun, 2017 1 commit
-
-
Michael Snoyman authored
I just realized that the function could be more general, and thereby more explicit in its intent, but allowing the non-exceptional release function to return a different type than the inner function.
-
- 15 Jun, 2017 1 commit
-
-
Ryan Scott authored
-
- 13 Jun, 2017 1 commit
-
-
Michael Snoyman authored
-
- 12 Jun, 2017 1 commit
-
-
Michael Snoyman authored
-
- 06 Jun, 2017 2 commits
-
-
Michael Snoyman authored
-
Michael Snoyman authored
For motivation, see: https://www.fpcomplete.com/blog/2017/02/monadmask-vs-monadbracket
-
- 11 Apr, 2017 1 commit
-
-
Ryan Scott authored
-
- 12 Dec, 2016 1 commit
-
-
Ryan Scott authored
-
- 30 Nov, 2016 1 commit
-
-
Ryan Scott authored
-
- 20 Jul, 2016 2 commits
-
-
Ryan Scott authored
-
Came up in a discussion with @bitonic. There's no downside I can see to the MonadCatch instance. However, the MonadMask instance is a little bit more controversial, in that it's not actually doing any masking. However, it's impossible to know that it's not masking the async exceptions since there are no side-effects from the Either monad. Of course, by using unsafePerformIO, we could observe the difference, but I think that's a valid trade-off. One final argument against MonadMask for Either: it's probably not terribly useful.
-
- 17 Jul, 2016 2 commits
-
-
Ryan Scott authored
-
Ryan Scott authored
-
- 16 Jan, 2016 6 commits
-
-
Edward Kmett authored
-
Edward Kmett authored
Bump dependency on transformers-compat to < 0.6
-
Edward Kmett authored
fix documentation typo
-
Edward Kmett authored
Bump QuickCheck upper bound
-
Edward Kmett authored
Bump template-haskell version bound for GHC 8
-
Adam Sapek authored
-
- 15 Jan, 2016 4 commits
-
-
glguy authored
Tests pass against the new version of TH, we can probably just edit the .cabal file on hackage rather than creating a new release.
-
Edward Kmett authored
-
Edward Kmett authored
-
Edward Kmett authored
Transformers5
-
- 13 Jan, 2016 2 commits
-
-
Adam Sapek authored
-
Adam Sapek authored
-
- 23 Nov, 2015 1 commit
-
-
Edward Kmett authored
canonical-AMP-warning avoidance
-
- 22 Nov, 2015 1 commit
-
-
Herbert Valerio Riedel authored
-
- 23 Sep, 2015 1 commit
-
-
Oleg Grenrus authored
-