Monads can be scary — treating them like fancy semicolons makes them fun! — Monads are programmable semicolons. That’s it. For a programmer, a monad provides functions that allow for sequencing actions. Moreover, between every two following actions, a specific code snippet is executed. So, a monad is a semicolon — but one whose exact behavior you can configure. Let’s Take a Step Back and Start Slow