 where Fantasy Land can help. Let&#39;s rewrite that function in terms of a Fantasy Land algebra:</p>
<pre><code class="lang-javascript">var fl = require(&quot;fantasy-land&quot;)

function plusOne(a) {
    return a[fl.map](function(value) {return value + 1})
}
</code></pre>
<p>Now this method works with any Fantasy Land compliant <a href="https://github.com/fantasyland/fantasy-land#functor">Functor</a>, such as <a href="https://github.com/ramda/ramda-fantasy/blob/master/docs/Maybe.md"><code>R.Maybe</code><