I have included a section about the state monad. This monad is interesting since the different monads get, put x are not just plain values but functions which get the state as an argument even if we don’t pass explicitly this argument (it is the job of run or bind).
I have applied other proposals.