Commit Graph

207 Commits

Author SHA1 Message Date
Alexis King
f06f1eebd5 Fix a small issue with a code example in the documentation
fixes #11
2018-09-01 14:00:41 -05:00
Alexis King
d64f89e103 Update stack.yml to LTS-12 2018-09-01 13:46:19 -05:00
Alexis King
b906323bd7 Update stack.yaml to use GHC 8.2.1 by default 2018-02-20 11:02:45 -08:00
Alexis King
3bf19ac613 1.1.0.0 2018-02-20 10:52:25 -08:00
Alexis King
76df37ce2e Re-export (~>) from Control.Monad.Freer 2018-02-20 10:47:38 -08:00
Alexis King
438a5da5a3 Swap the order of some type variables in interpretM for consistency 2018-02-20 10:45:47 -08:00
Alexis King
99e26fae04 Change LastMember to cooperate better with rigid vars and local dicts
The use of a closed type family works well when the entire effect list
is known, but when it’s quantified over, the closed type family gets
stuck (since the effect list is rigid). Sometimes this is okay, since it
simply means the LastMember constraint is insoluble, but can be
satisfied if an explicit constraint brings a local LastMember dictionary
into scope. Performing the recursion directly in the instance avoids
this problem, though it does require overlapping instances.

fixes #6
2018-02-20 10:35:14 -08:00
Adam Szkoda
a2ae7109ad Add missing bits so the README code compiles 2018-02-19 14:14:39 -06:00
Justus Adam
db512cc9f5 Fixed one errant runState use 2018-02-19 14:14:01 -06:00
Alexis King
dedbacec57 1.0.1.1 2018-01-31 10:27:13 -08:00
Lysxia
bbbe49d848 Fix FindElem while preserving error messages 2018-01-31 10:19:43 -08:00
Alexis King
9be94608dd 1.0.1.0 2018-01-27 10:10:53 -08:00
Martin Huschenbett
9aa407f674 Add Control.Monad.Freer.State.gets 2018-01-27 11:01:17 +01:00
Alexis King
888465fd06 Properly commit changelog.md to CHANGELOG.md renaming
This was previously ignored due to filesystem case insensitivity.
2017-12-08 15:18:45 -08:00
Alexis King
3c09ca2c6d Add the subsume handler for deduplicating effects 2017-12-07 16:10:29 -08:00
Alexis King
9b3ca1df06 Remove GHC 8.2.1 builds from allowed failures in CI
This reverts 5afdb229bb now that
commercialhaskell/stack#3624 is fixed.
2017-12-07 13:40:04 -08:00
Alexis King
9885dc72ce Disable -Wredundant-constraints in a module that uses custom type errors
Also, constraint extensible-effects to < 2 in benchmarks to use the
non-freer implementation.
2017-12-07 11:54:02 -08:00
Alexis King
175d3e5097 1.0.0.0 2017-12-07 11:03:39 -08:00
Alexis King
f913ead45d Make some minor updates to the README 2017-12-07 10:59:37 -08:00
Alexis King
0ad30411c0 Add documentation for Control.Monad.Freer 2017-12-07 10:53:23 -08:00
Alexis King
5afdb229bb Allow GHC 8.2.1 builds to fail in CI
This is a temporary workaround for commercialhaskell/stack#3624.
2017-12-06 16:33:13 -08:00
Alexis King
cbe6d68cdc Limit parallelism in CI builds to avoid out-of-memory errors 2017-12-06 16:25:38 -08:00
Alexis King
47b537534f Remove the StateRW module, since it wasn’t very useful 2017-12-06 16:24:09 -08:00
Alexis King
6cf9abcf88 Make some minor tweaks to the example and change maintainer in comments 2017-12-06 16:20:46 -08:00
Alexis King
207be8e9d7 Clean up some more, remove some half-baked effects 2017-12-06 15:48:25 -08:00
Alexis King
e89ed8911f Rename project to freer-simple 2017-12-06 13:20:52 -08:00
Alexis King
8a5570174c Update copyright notices 2017-12-06 11:50:25 -08:00
Alexis King
1cd5705bef Reformat project to make the style a little more idiomatic 2017-12-06 11:49:45 -08:00
Alexis King
4b2ffbb8a0 Reintroduce freer’s code of conduct 2017-12-05 14:48:00 -08:00
Alexis King
594f4518b6 Rename Exception to Error and add some more effect handlers 2017-12-05 14:42:29 -08:00
Alexis King
83a37ee3a8 Rename translateM to interpretM and use it in the Console example 2017-07-06 14:10:03 -07:00
Alexis King
0bbe540c78 Add translate and translateM effect interpreter constructors
These simply help to avoid type annotations by providing some common
cases of effect interpreters.
2017-07-06 11:05:37 -07:00
Alexis King
5d8a224b35 Make it easier to interpret actions in a polymorphic monad
Specifically, this adds sendM, which is identical to send but explicitly
selects the final effect to aid type inference, and it also includes a
MonadBase instance for Eff.
2017-07-06 10:41:12 -07:00
Alexis King
bff3a6fee6 Completely change the exposed API for building effect handlers
This changes the way effect handlers work by removing the more complex
handleRelay and replaceRelay functions and replacing them with a much
simpler, much more opinionated API. The old functions are still
available for now in Control.Monad.Freer.Internal if they are needed.
2017-07-06 10:10:02 -07:00
Alexis King
f360d563d4 Add custom type errors for unsolvable Member constraints 2017-07-05 14:51:01 -07:00
Tomas Janousek
39a7e62cc0 Update changelog (PR #41) 2017-05-10 15:13:24 +02:00
Sandy Maguire
9f6ff9f67d add raise 2017-05-10 15:11:32 +02:00
Tomas Janousek
84762417b7 Release Process: (ab)use merges to make releases reachable 2017-04-16 17:17:12 +02:00
Tomas Janousek
f6128df82a Merge branch 'hlint-backport' into master 2017-04-16 17:02:31 +02:00
Tomas Janousek
9500d8af26 Release 0.3.0.1 2017-04-16 16:38:31 +02:00
Tomas Janousek
5f467b53db Fix hlint "Use module export list" warnings
Addresses #31
2017-04-16 16:38:29 +02:00
Tomas Janousek
988a2987d3 Disable test-hlint flag for non-developer builds
There's little point in having our tests fail randomly whenever hlint
adds new warnings. It just generates noise and work for stackage
curators.

Addresses #31
2017-04-16 16:38:23 +02:00
Tomas Janousek
a792dbeebf Relax hlint bounds
Fixes #31
2017-04-16 16:28:33 +02:00
Tomas Janousek
ff3808b7ab Update freer-effects.cabal 2017-04-16 09:45:05 +02:00
Peter Trsko
da3b972379 Noting relationship with freer in package description
Addresses #29
2017-03-21 15:29:33 +01:00
Peter Trško
765cab34f3 Package freer-extra was renamed to freer-effects-extra (cont.)
Forgot to add "effects" to link text.
2017-03-18 14:42:22 +01:00
Peter Trško
3699695665 Package freer-extra was renamed to freer-effects-extra 2017-03-18 14:41:07 +01:00
Matej Kollar
82fa5bd624 Point people interested in combining with transformers to freer-extra
Also freer-extra has more goodies and is worth mentioning.
2017-03-18 14:39:53 +01:00
Peter Trško
3f911ac627 Updated Release Process regarding deprecations and hpack
* We need to make sure that deprecated definitions are purged when
  scheduled.
* Cabal file is now generated, but some minor changes need to be done
  during release.
2017-03-18 13:32:41 +01:00
Peter Trško
21edc9ea75 Updated ChangeLog regarding changes in Fresh (PR #24) 2017-03-18 13:30:12 +01:00