r an Either from a library like <a href="https://github.com/sanctuary-js/sanctuary">Sanctuary</a> or <a href="https://github.com/ramda/ramda-fantasy">Ramda-Fantasy</a>), or it could be a Mithril stream, or a <a href="https://github.com/paldepind/flyd">flyd</a> stream, etc. Ideally, we wouldn&#39;t want to write a similar version of the same function for every possible type that <code>a</code> could have and we wouldn&#39;t want to be writing wrapping/unwrapping/error handling code repeatedly.</p>
<p>This is