Commit graph

26 commits

Author SHA1 Message Date
Correl Roush
348d98e786 Add Optional type conversions to Maybe and Result 2019-06-11 11:00:35 -04:00
Correl Roush
efa13e6f08 Remove Future from generic monad testing
The Future tests already re-implement all of the normal tests while
also handling their asynchronous nature. Including them in the generic
tests leave futures unawaited.
2019-01-08 15:40:00 -05:00
Correl Roush
375e5a47e1 Adjust signatures of curried functions 2019-01-08 14:53:33 -05:00
a45af9b5b0 Adjust signatures of Reader instances 2019-01-08 14:53:33 -05:00
116c3cc1ac Move currying to its own module and give it types 2019-01-08 14:53:33 -05:00
Correl Roush
e623ba0571 Remove conditional behavior of Future.pure
It was not wrapping awaitable values in a new awaitable, which is
incorrect and confusing behavior.
2019-01-04 11:44:38 -05:00
a340cfea68 Ensure the types are correct for all monad methods 2019-01-03 22:28:41 -05:00
93bc193494 Add the Future monad 2018-12-12 23:00:18 -05:00
7608fa40fe Add missing result test 2018-12-12 01:17:49 -05:00
8a25d3904f Add an infix operator for Applicative.apply 2018-12-11 23:22:35 -05:00
58c8d6841b Add Result.mapError 2018-12-11 22:19:13 -05:00
77bf6b4735 Add Monad.sequence 2018-12-11 22:08:15 -05:00
Correl Roush
16c87c4d04 Ensure all monoids and monoids implement their appropriate operators 2018-12-06 13:53:07 -05:00
Correl Roush
50a26a7b7a Add Maybe analogues to Result's to/from Maybe methods 2018-12-06 13:31:09 -05:00
Correl Roush
c7a5020d89 Add some useful conversion functions 2018-12-03 16:16:04 -05:00
Correl Roush
b798eb74ba Add Reader 2018-10-25 15:15:27 -04:00
a4a46a46c7 More monoids 2018-10-13 02:27:39 -04:00
Correl Roush
8b00d44f39 Consolidate test fixtures 2018-10-12 22:20:31 -04:00
Correl Roush
711571d807 Add more tests for Result 2018-10-12 15:41:37 -04:00
Correl Roush
c31a9c49ca Add more tests for Maybe 2018-10-12 14:54:03 -04:00
Correl Roush
1a87d73a5b Applicative 2018-10-12 14:54:03 -04:00
Correl Roush
7ce173e829 Functor tests 2018-10-12 14:09:05 -04:00
c71b9d6ff6 Rename methods
unit -> pure
fmap -> map
2018-10-11 21:06:23 -04:00
f5b0e6e5e4 Monoids 2018-10-11 20:45:56 -04:00
Correl Roush
d38f617ba4 Test that each monad respects monad laws 2018-10-11 12:15:52 -04:00
de53c59732 Organize into a library 2018-10-11 01:26:00 -04:00