new IO() IO is monad that is simply an abstract data type. Actions are defined rather than invoked. IO is a good choice to handle DOM mutation and reducing side effects. Source: monad/index.js, line 23