monads.reader

Computations that read from a static environment.

ask

(ask)

asks

(asks f)

eval-readerW

exec-readerW

reader->

macro

(reader-> bindings body)
Takes a vector of bindings and a final body. Environment will
be passed to each value on the righthand side of the
bindings vector, and to the final body value.

readerE->

macro

(readerE-> bindings body)
Like reader-> except the value should be an Either.
Execution will stop when the first [:err ...] value is encountered.

readerM->

macro

(readerM-> bindings body)
Like reader-> except the value should be a Maybe.
Execution will stop when the first nil value is encountered.

readerW->

macro

(readerW-> bindings body)
Like reader-> except that output is appended.

readerWE->

macro

(readerWE-> bindings body)
Like reader-> except the value should be an Either
and output is appended. Execution will stop when the
first [:err ...] value is encountered.

readerWM->

macro

(readerWM-> bindings body)
Like reader-> except the value should be a Maybe
and output is appended. Execution will stop when the
first nil value is encountered.

return-reader

(return-reader x)

return-readerE

return-readerM

return-readerW

return-readerWE

return-readerWM

run-reader

(run-reader reader-fn env)