This is an extensible effects library for Haskell taking inspiration from the Eff language <http://www.eff-lang.org/>.
See these papers for the ideas and theory behind the library:
<http://homepages.inf.ed.ac.uk/slindley/papers/handlers.pdf> - A. Bauer, M. Pretnar: Programming with Algebraic Effects and Handlers <http://arxiv.org/abs/1203.1539> - O Kiselyov, A Sabry, C Swords: Extensible Effects <http://dl.acm.org/citation.cfm?id=2503791>
Implementation wise it's most close to 'extensible-effects' <http://hackage.haskell.org/package/extensible-effects> (also see the Extensible Effects paper) but it implements deep handlers instead of shallow.
' import Control.Effects.Cont.Eff import Control.Effects.Cont.Reader import Control.Effects.Cont.Exception
program = do   v <- ask   if v < 15   then throw $ show v   else return (v+1)
run n = runPure . handle exceptionHandler . handle (readerHandler n)
res :: Integer -> Either String Integer res n = run n program '.
Package Version | Update ID | Released | Package Hub Version | Platforms | Subpackages |
---|---|---|---|---|---|
0.1.0.8-bp150.1.3 info | GA Release | 2018-07-30 | 15 |
|
|