do as bs
do a <- as bs aAn alternative name for this function is 'bind', but some people may refer to it as 'flatMap', which results from it being equivalent to
\x f -> join (fmap f x) :: Monad m => m a -> (a -> m b) -> m bwhich can be seen as mapping a value with Monad m => m a -> m (m b) and then 'flattening' m (m b) to m b using join.
do a <- as bs a