 regardless of how these libraries implement the constructs.</p>
<p>For example, say we want to create a generic function called <code>plusOne</code>. The naive implementation would look like this:</p>
<pre><code class="lang-javascript">function plusOne(a) {
    return a + 1
}
</code></pre>
<p>The problem with this implementation is that it can only be used with a number. However it&#39;s possible that whatever logic produces a value for <code>a</code> could also produce an error state (wrapped in a Maybe o