Documentation

If they are, then m >>>= f ≡ m >>=lift. f is required to hold, and is
in fact the default definition. If it is not a MonadTrans instance, then
you have greater flexibility in how to implement this class.

This is useful for types like expression lists, case alternatives,
schemas, etc. that may not be expressions in their own right, but often
contain expressions.