Package com.jnape.palatable.lambda.monad
package com.jnape.palatable.lambda.monad
-
ClassDescriptionMonads are
Applicativefunctors that support a flattening operation to unwrapM<M<A>> -> M<A>.MonadError<E,A, M extends MonadError<E, ?, M>> An interface formonadsthat can be interrupted with some type of error.MonadReader<R,A, MR extends MonadReader<R, ?, MR>> A monad that is capable of reading an environmentRand producing a lifted valueA.A class ofmonadsthat offer a stack-safe interface for performing arbitrarily manyflatmap-likeoperations viaMonadRec.trampolineM(Fn1).MonadWriter<W,A, MW extends MonadWriter<W, ?, MW>> AMonadthat is capable of writing and accumulating state alongside a value, but is not necessarily capable of simultaneously accessing the state and the value.A stack-safemonad transformerthat can safely interpret deeply nested left- or right-associated binds for anyMonadRec.