gmapM package:essence-of-live-coding
A generic monadic transformation that maps over the immediate subterms
The default definition instantiates the type constructor
c in
the type of
gfoldl to the monad datatype constructor, defining
injection and projection using
return and
>>=.
Transformation of one immediate subterm with success
Transformation of at least one immediate subterm does not fail