Retrieves a function of the part of the current environment.
This is Control.Monad.Reader's reader with the type
adjusted for better compatibility with Has.
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.