title: terms of IO inside Haskell
body: <p>Reading the internal</p>
  <p><a href="https://wiki.haskell.org/IO_inside" rel="nofollow noreferrer">https://wiki.haskell.org/IO_inside</a></p>
  <pre><code>class Monad m where
      unit :: a -&gt; m a
      bind :: m a -&gt; (a -&gt; m b) -&gt; m b
  </code></pre>
  <p>I observe the term <code>unit</code> seems no longer used, and <code>pure</code> is the term now. Why? because I think <code>pure</code> is not adequate for such a recursive structure.</p>
  <p><code>(&gt;&gt;=)</code> is called <code>bind</code> here, and how do we call <code>(&gt;&gt;)</code>?</p>