MSFs with a Reader monadic layer.
This module contains functions to work with MSFs that include a
Reader monadic layer. This includes functions to create new
MSFs that include an additional layer, and functions to flatten
that layer out of the MSF's transformer stack.
The parameterizable reader monad.
Computations are functions of a shared environment.
The return function ignores the environment, while
>>= passes the inherited environment to both
subcomputations.
The reader monad transformer, which adds a read-only environment to
the given monad.
The return function ignores the environment, while
>>= passes the inherited environment to both
subcomputations.