haskell,category-theory,abstract-algebra

Do notation is just syntactic sugar for >>=. Code such as do x <- a b -- b is an expression possibly involving x is desugared to a >>= \x -> b If you are studying monads in CT, you will probably find that they are being defined as functors...