Sequentially compose two actions, discarding any value produced by the
first, like sequencing operators (such as the semicolon) in imperative
languages.
'as >> bs' can be understood as the do
expression
Sequentially compose two actions, passing any value produced by the
first as an argument to the second.
'as >>= bs' can be understood as the do
expression