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
Sandy Maguire
8a6d515e99
new effect module
2019-03-20 01:44:23 -04:00
Sandy Maguire
f2ec5b7a03
rename package to polysemy
2019-03-20 00:46:26 -04:00
Sandy Maguire
06fa6037a0
add TH to derive effects
2019-03-20 00:28:14 -04:00
Sandy Maguire
2be94abfd1
tests
2019-03-18 23:04:21 -04:00
Sandy Maguire
2e01410227
prjCoerce for reinterpret
2019-03-18 16:51:30 -04:00
Sandy Maguire
130a18ad6a
it is so FAST
2019-03-18 15:50:19 -04:00
Sandy Maguire
0f041dbfd3
whoa. optimize away the pain
2019-03-18 14:20:24 -04:00
Sandy Maguire
730859a5f3
core-dump
2019-03-17 21:03:23 -04:00
Sandy Maguire
a8b1f247aa
typesafe union
2019-03-17 14:09:09 -04:00
Sandy Maguire
d2bdd69401
it seems to work with F
2019-03-13 13:51:42 -04:00
Sandy Maguire
4861a49698
dont need dat crap
2019-03-11 15:33:31 -04:00
Sandy Maguire
76c879d622
minimal working example of fused-effects
2019-03-05 14:33:49 -05:00
Sandy Maguire
32ce375447
I AM THE KING BRAIN LORD also fintan
2019-03-02 15:55:19 -08:00
Samuel Gélineau
904fa69df4
fairer benchmark with -O2 for everyone
...
too-fast-too-free was compiled without -O2, which put it at a
disadvantage compared to the code from the competing libraries, which is
inside the benchmark project and was thus compiled with -O2.
2019-02-21 21:03:00 -05:00
Samuel Gélineau
ed14b73111
benchmark stanza
2019-02-21 19:34:06 -05:00
Sandy Maguire
8105e589c5
cont operational
2019-02-14 13:15:43 -05:00
Sandy Maguire
f98ea99ba7
operational is shitty but works
2019-02-14 12:46:15 -05:00
Sandy Maguire
5388029d10
it's TOO FAST and TOO FREE
2019-02-14 09:24:26 -05:00
Sandy Maguire
e9a7e687fc
state holy moly
2019-02-13 21:53:21 -05:00
Sandy Maguire
9c8162a5b1
GLORY
2019-02-13 15:52:56 -05:00