Control.Monad replacements
Basic supermonad functions
Generalizations of list functions
Conditional execution of monadic expressions
Monadic lifting operators
Strict monadic functions
Additional generalized supermonad functions
Addition due to RebindableSyntax
Functions based on applicatives