title: What is the difference between a Functor and a Monad?
body: <p>There are similar questions here but they are attached to a particular programming language and I am looking for an answer on the conceptual level.</p>
  
  <p>As I understand, Functors are essentially immutable containers that expose <em>map()</em> API which derives another functor. Which addition makes it possible to call a particular functor a monad? </p>
  
  <p>As I understand, every monad is a functor but not every functor is a monad.</p>