- Internal overhaul
- Slight performance improvements
runStateLocal
that runs theState
effect with thread-local semantics
- Slight performance improvements
(:>)
is now a typeclass by itself instead of a type synonym
makeEffect
is now capable of generating sending functions for operations using concreteEff
s for the monad type
- Dependency on
rec-smallarray
Clarify changelog: new features that are listed "Unreleased" in 0.3.0.0 changelog are in fact released
- [BREAKING] Introduces an
OnException
primitive forMask
that replacesBracket
andBracketOnError
(note that this only affects the effect datatype; there is stillbracket
andbracketOnError
functions with the same semantics) runError
andmapError
are slightly (but observably) faster now
freshEnumToState
forFresh
onException
andbracketOnError_
forMask
- Lifted convenience instances of
Bounded
,Num
,Fractional
,Floating
andIsString
forEff
MonadZip
instance from theMonadComprehensions
extension forEff
runFreshAtomicCounter
forFresh
inputToReader
,mapInput
andbindInput
forInput
mapOutput
andbindOutput
forOutput
runStateIORef
,runStateMVar
andrunStateTVar
forState
- [BREAKING] Changed parameter order of
Handling
class frome es esSend
toesSend e es
- [BREAKING] Relaxed fundep of
Handling
toesSend -> e es
(HO combinators may requireTypeApplication
more often) - Moved
Data.*
modules toCleff.Internal.*
so as not to pollute common namespaces
Trustworthy
flags for non-internal modulessendVia
for sending an effect operation along a transformation between effect stacksraiseUnder
,raiseNUnder
,raiseUnderN
,raiseNUnderN
for introducing effects under other effects in the effect stackrunWriterBatch
as a more efficientWriter
interpreter that writeslisten
ed values in batch instead of in real time
- Initial API