λ v5.4.0 Release Notes
Release Date: 2021-09-17 // over 3 years ago-
🔄 Changed
Absent
folds short-circuit on the firstnothing()
- 👍
EitherMatcher#isLeftThat/isRightThat
support contravariant bounds on their delegates
➕ Added
IterateT#runStep
, a method used to run a single step of an IterateT without the contractual guarantee of emitting a value or reaching the endThese#fromMaybes :: Maybe a -> Maybe b -> Maybe (These a b)
EitherMatcher#isLeftOf/isRightOf
for asserting equality
🛠 Fixed
WriterT
now keeps an immediate reference to the embedded monad'spure
Previous changes from v5.3.0
-
🔄 Changed
IterateT#unfold
now only computes a singlePure
for the given inputReaderT#fmap
andStateT#fmap
avoid unnecessary calls topure
MaybeT
implementsMonadError
➕ Added
$
, function application represented as a higher-orderFn2
Fn1#withSelf
, a static method for constructing a self-referencingFn1
HNil/SingletonHList/TupleX#snoc
, a method to add a new last element (append to a tuple)Tuple2-8#init
, for populating aTupleN
with all but the last element
🛠 Fixed
IterateT#trampolineM
now yields and stages all recursive result values, rather than prematurely terminating on the first termination resultIterateT#flatMap
is now stack-safe regardless of how many consecutive emptyIterateT
s are returned and regardless of whether the monad is strict or lazy or internally trampolined