Commit Graph

70 Commits

Author SHA1 Message Date
TheMatten
146ea88d11 Add Paths_* to generated-other-modules 2020-10-23 11:00:23 +02:00
TheMatten
5f14cd051d Remove optimization phases, update package.yaml-s 2020-10-23 09:56:15 +02:00
Torsten Schmits
89a664d8fe update github org 2020-09-08 14:18:38 +02:00
TheMatten
ad07c63b9f Relax fcf bounds 2020-03-10 08:35:34 +01:00
KingoftheHomeless
3c731186cb
1.3.0.0 (#318)
* v1.3.0.0

* Update version and version bounds for polysemy and polysemy-plugin
2020-02-13 21:21:32 +01:00
KingoftheHomeless
6f9f4541f5
Bump bounds for first-class-families (#313) 2020-01-31 18:59:04 +01:00
Sandy Maguire
5aa84c8757
Disable loopbreaker (#274)
* Disable loopbreaker

* "Fix" Fusion

* whoops
2019-11-01 22:11:57 +01:00
Sandy Maguire
4cce80c043
Law Machinery (#269)
This PR adds machinery for writing easy laws that should hold for an effect. It gives an example of what they'd look like for State s.
2019-11-01 19:57:53 +01:00
Sandy Maguire
d7d3a938f4 Release polysemy-1.2.3.0 2019-10-29 13:22:26 +01:00
Sandy Maguire
d46a5ddc5e Patch package.yaml from #267 2019-10-28 17:25:30 +01:00
Sandy Maguire
e1a500f02b Release polysemy-1.2.2.0 2019-10-22 19:40:43 +02:00
Sandy Maguire
ac6d7b3121 Release polysemy-1.2.1.0 2019-09-15 21:42:33 +02:00
Sandy Maguire
825dfd6859 Release polysemy-1.2.0.1 2019-09-15 21:40:31 +02:00
KingoftheHomeless
4a5f2ce92a
Add Final Effect (#217)
* Add Final Effect

* Changes per review, Final at top-level, doc changes

* Update Changelog

* Final touches to Final

* Revert change to stack.yaml
2019-08-30 22:38:53 +02:00
Sandy Maguire
83084f7eda Release polysemy 1.1.0.0 2019-08-15 14:30:06 -07:00
KingoftheHomeless
d7d3d4bb4f Add AtomicState and atomic interpreters for Output/Writer (#206)
* Add AtomicState and atomic interpreters for Output/Writer

* Fixed a word in docs, moved test functions around

* Remove runWriterIORef and runWriterTVar
2019-08-15 14:23:06 -07:00
Sandy Maguire
f2ca91d57d Release polysemy-1.0.0.0 2019-07-24 10:45:42 -04:00
Dmitrii Kovanikov
011530bba1 [#180] Use type-errors-pretty package (#182)
Resolves #180
2019-07-20 08:48:42 -04:00
Sandy Maguire
f93e6d9111 Release polysemy-0.7.0.0 2019-07-08 10:19:25 -04:00
Sandy Maguire
faaf1e3a96
Don't use Loopbreaker until GHC 8.7+ (#164)
Turns out haddocks have been broken forever, but because of haskell/cabal#5977 we never noticed. This PR fixes CI so it breaks (see 6f915b6), and then fixes it by changing the GHC versions under which we're allowed to use loopbreaker. Fixes #160
2019-07-07 11:27:18 -04:00
Sandy Maguire
082ed39e85 Release polysemy-0.6.0.0 2019-07-04 22:05:51 -04:00
Sandy Maguire
482de98afe
Use type-errors for our type errors! (#144)
This PR has farmed out the type error machinery out to my new package https://github.com/isovector/type-errors. It's much nicer to work with, and a big red diff!
2019-07-03 16:05:51 -04:00
TheMatten
8bbd9dc7d6 Use new, separate loopbreaker library for inlining (#145)
* Remove explicit loopbreakers, enable plugin

* Use uploaded version of `loopbreaker`

* Fix span of macro

* Disable plugin on GHC <8.6

* Add comment about use of plugin

* Separate unrelated conditions
2019-07-01 02:13:37 -04:00
Sandy Maguire
8bd297fe49 Release polysemy 0.5.1.0 2019-06-28 16:19:33 -04:00
Sandy Maguire
4d360445ed Release polysemy 0.5.0.1 2019-06-27 00:36:43 -04:00
Sandy Maguire
008a152097 hpack or cabal (or both) is a janky POS 2019-06-26 00:43:10 -04:00
Sandy Maguire
a2e39776ce Release polysemy 0.5.0.0 2019-06-26 00:29:26 -04:00
Sandy Maguire
2654d35066
Forklift interpretations (#128)
This PR provides a single function withLowerToIO, which runs a desired Sem r effect all the way down to IO, without needing to know the natural transformation beforehand. It does it by running the desired code in a new thread, and shipping all of the unhandled effects back to the main thread. The main thread turns into an event loop for the duration of the withLowerToIO block.
2019-06-25 23:46:54 -04:00
Sandy Maguire
29216ceb69
Improve CI coverage -- now on GHC 8.4! (#39) 2019-06-19 17:25:37 -04:00
Sandy Maguire
bba49aaeb8
Don't emit the FirstOrder error for unknown effects (#115)
This PR introduces the FCF machinery that will give us more control over writing type-level functions. It defines an IfStuck a b c tyfam that will leave b around if a is stuck, otherwise it will fcf-evaluate c. Everything is polykinded so we can stack these things together to make big logic chains to emit specific variables depending on what exactly is stuck.
2019-06-16 17:14:36 -04:00
Sandy Maguire
0a1ce2b837 Add hspec-discover to package build-tools
Fixes #111
2019-06-15 20:12:18 -04:00
Sandy Maguire
82f86add29
Custom type error testing (#113)
This PR adds doctests allowing us to write tests for the custom type errors. Having this stuff reified in the test suite means we can iterate on the implementations and give much better QA.
2019-06-15 20:04:11 -04:00
Sandy Maguire
e960ce1877 Release polysemy 0.4.0.0 2019-06-12 09:40:08 -04:00
Sandy Maguire
eff97914f7 Release polysemy 0.3.0.1 2019-06-09 00:22:50 -04:00
Sandy Maguire
c937132caa Release polysemy 0.3.0.0 2019-06-01 23:43:41 -04:00
Sandy Maguire
cd074a4bd4
Move Random to polysemy-zoo (#78)
* Move Random to zoo

* Changelog
2019-06-01 18:42:12 -04:00
Sandy Maguire
601cbe8630 Release polysemy 0.2.2.0 2019-05-31 00:10:52 -04:00
TheMatten
b41e650f00 Rewrite 'Polysemy.Internal.TH.Effect' in terms of 'th-abstraction' (#67) 2019-05-29 14:15:46 -04:00
Sandy Maguire
ad42c75fcf Release polysemy 0.2.1.0 2019-05-27 01:16:14 -04:00
Sandy Maguire
f2de66ac52 Release version 0.2.0.0 2019-05-23 03:53:07 -04:00
Sandy Maguire
a20994abab
Fix broken higher order effects (#58)
* Fix a serious bug in interpretH and friends

* Spec to prove reader works now
2019-05-23 03:49:26 -04:00
Sandy Maguire
76d5f1953e
Release 0.1.2.1 (#51) 2019-05-18 11:42:14 -04:00
Sandy Maguire
2cfd3692f2 Let plugin know when to improve performance 2019-05-16 15:26:18 -04:00
Sandy Maguire
fadd603d59 Release 0.1.2 2019-04-26 12:18:44 -04:00
Sandy Maguire
cb1aba83ee add runBatchOutput 2019-04-20 06:57:56 -04:00
Sandy Maguire
3b1bf8e4af runIO instance 2019-04-14 15:01:16 -04:00
Sandy Maguire
8d85a04302 final cleanup 2019-04-10 16:27:25 -04:00
Sandy Maguire
f98cafa4df suggest documentation + opt-out of errors 2019-04-08 13:47:07 -04:00
Sandy Maguire
773a3aab8f random effect 2019-03-21 00:28:01 -04:00
Sandy Maguire
546cf16e1b use default pragmas 2019-03-20 09:53:22 -04:00