Commit Graph

68 Commits

Author SHA1 Message Date
Andrzej Rybczak
5f7a9257f6
Base Effectful.Exception on Control.Exception (#257)
* Base Effectful.Exception on Control.Exception

* Add catchIf/handleIf/tryIf

* Review fixes

* Simplify the top section

* Adjustment

* More adjustments
2024-10-17 18:14:33 +02:00
Andrzej Rybczak
df06ee3834 Add plusEff, make emptyEff and sumEff generate better call stacks 2024-10-09 23:09:27 +02:00
Andrzej Rybczak
e2b1ffadf8 Use explicit deriving strategies 2024-10-06 15:54:55 +02:00
Andrzej Rybczak
c2d373b767 Make envRefs store Refs instead of juggling Ints 2024-10-06 14:59:55 +02:00
Andrzej Rybczak
fa24ccaa68
Add the Effectful.Exception module with appropriate re-exports (#252) 2024-10-05 14:58:23 +02:00
Andrzej Rybczak
1fcb071d1c
Use strict-mutable-base (#235) 2024-09-05 19:08:23 +02:00
Andrzej Rybczak
0ef04f2fc8
Improve Labeled and add labeled versions of base effects (#228)
* Improve Labeled and add labeled versions of base effects

* Remove .VDQ modules for now

* tests

* doctest

* more doctest

* ci

* run doctest with 9.10

* run polysemy with 9.10
2024-08-22 20:59:21 +02:00
Andrzej Rybczak
14bbcfd073
Utility functions for handling effects (#231)
* Add utility functions for first order effects

* Add utility functions that take the effect handler as the last parameter

* Annotate type parameters of EffectHandler with their kinds
2024-08-09 15:56:50 +02:00
Andrzej Rybczak
164ebe1901
Update CI (#218) 2024-04-28 06:17:24 +02:00
Andrzej Rybczak
a235b074cd
Test with GHC 9.8.2 (#210) 2024-03-19 20:35:54 +01:00
Andrzej Rybczak
afbffe2e2a
Use ImportQualifiedPost (#199) 2024-01-25 01:21:20 +01:00
Andrzej Rybczak
65e8c3d652
Update template-haskell bounds (#198)
* Update template-haskell bounds

* Update GHC
2024-01-03 14:42:14 +01:00
Andrzej Rybczak
02ce340d05
Add Effectful.Provider.List (#194) 2023-12-05 00:56:10 +01:00
Andrzej Rybczak
87955a807e Remove inaccurate information from the Show instance of ErrorWrapper 2023-11-14 13:09:21 +01:00
Andrzej Rybczak
b92dc37a7b
Prevent internal functions from appending calls stack frames to handlers (#190) 2023-10-26 18:39:14 +02:00
Andrzej Rybczak
55d925e3cf
Update CI (#188) 2023-10-03 20:24:27 +02:00
Andrzej Rybczak
7a3186aab8
Update CI (#181) 2023-09-11 00:14:46 +02:00
Andrzej Rybczak
c6ea835782
Add support for labeled effects (#138)
* PoC of labeled effects

* Working implementation

* Define DispatchOf and StaticRep

* Add changelog
2023-08-27 22:49:25 +02:00
Andrzej Rybczak
6332147cdf
Test with GHC 9.8 (#179) 2023-08-11 02:44:38 +02:00
Andrzej Rybczak
1b4fb24046 Clean up remains of SyncUnlift 2023-06-27 14:21:26 +02:00
Andrzej Rybczak
998c65452f
Add the SyncUnlift strategy (#170) 2023-06-24 23:42:25 +02:00
Andrzej Rybczak
95d592d4fb
CI update (#166) 2023-06-03 03:26:07 +02:00
Andrzej Rybczak
333d448012 Rename Reified to Provider as it's more accurate 2023-05-22 16:26:17 +02:00
Andrzej Rybczak
c461886102
Add support for turning an effect handler into an effectul operation (#135) 2023-05-21 05:48:15 +02:00
Andrzej Rybczak
2020781aa4
Make withEffToIO explicitly take an unlifting strategy (#160) 2023-05-18 21:13:34 +02:00
Andrzej Rybczak
11d1fdb061
Test with GHC 9.2.7 and 9.6.1 (#147) 2023-03-13 09:08:16 +01:00
Andrzej Rybczak
24ff96f97c
Test with GHC 9.6 (#145) 2023-03-05 20:40:30 +01:00
Andrzej Rybczak
efa513f51a Test with GHC 9.2.6 2023-02-14 23:32:13 +01:00
Andrzej Rybczak
19e7532f0a
Use C sources only with GHC < 9 (#139) 2023-02-14 22:48:37 +01:00
Andrzej Rybczak
4a1b690a67
Allow inject to turn a monomorphic effect stack into a polymorphic one (#136) 2023-02-01 15:25:29 +01:00
Andrzej Rybczak
b43f23c32c
Stop using the internal library because of bugs in stack (#126) 2023-01-12 12:15:38 +01:00
Andrzej Rybczak
7becb972ea
Update CI (#122) 2023-01-01 20:29:15 +01:00
Andrzej Rybczak
69a03e8cac Update CHANGELOG 2022-12-09 17:27:57 +01:00
Andrzej Rybczak
53db8ef75a
Add localSeqLift and localLift (#109) 2022-11-07 00:41:31 +01:00
Andrzej Rybczak
003375eb29
Add the NonDet effect (#102)
Co-authored-by: Mann mit Hut <github+mmhat@with-h.at>
2022-10-23 02:18:18 +02:00
Andrzej Rybczak
910338f7f2
Change PrimState for Eff from RealWorld to PrimStateEff (#95) 2022-08-30 23:49:49 +02:00
Andrzej Rybczak
72faf66c5a Test with GHC 9.4.2 2022-08-29 17:34:27 +02:00
Andrzej Rybczak
6334e1399b
Include 'e :> localEs' constraint in the EffectHandler (#88) 2022-08-17 17:56:47 +02:00
Andrzej Rybczak
74da2829fb Update CI 2022-08-03 15:27:44 +02:00
Andrzej Rybczak
f8b882c947
Make storage references in the environment immutable (#77)
It shuffles time complexities for `Env` operations around, but overall:

- It speeds things up because of less indirections.

- It makes the API simpler since there is no longer need to fork.
2022-08-03 14:09:07 +02:00
Andrzej Rybczak
19af2ec7f3
Change SuffixOf to SharedSuffix and make it behave as advertised (#74)
This both relaxes former advertised behavior of SuffixOf as well as makes it
behave properly as the type family version didn't.
2022-07-28 03:14:14 +02:00
Andrzej Rybczak
a9494026b7
Don't reset the strategy inside the continuation in withEffToIO (#70)
Fixes https://github.com/haskell-effectful/effectful/issues/69.
2022-07-18 15:41:15 +02:00
Andrzej Rybczak
fb2ec9a873 Slightly update description of packages 2022-07-15 01:48:05 +02:00
Andrzej Rybczak
1ebe7e1658
Release 1.0.0.0 (#67)
Fixes https://github.com/haskell-effectful/effectful/issues/20.
2022-07-13 22:05:35 +02:00
Andrzej Rybczak
b623560e7f Documentation 2022-07-13 16:57:37 +02:00
Andrzej Rybczak
f95b08cd3f Test with GHC 9.2.3 2022-05-31 07:12:44 +02:00
Andrzej Rybczak
704d7ced39 Add GHC 9.4 to CI 2022-05-29 05:13:32 +02:00
Andrzej Rybczak
e15aa5d89a Update links to the repo 2022-05-29 05:05:13 +02:00
Andrzej Rybczak
daca435f0b Rewrite Env for simpler code and support for more operations 2022-03-12 03:19:30 +01:00
Andrzej Rybczak
94e54ea884 Test with GHC 9.2.2 2022-03-07 21:17:21 +01:00