John,<div><br></div><div>You write:</div><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; ">
<span class="Apple-style-span" style="border-collapse: collapse;">Yes, you are describing 'co-monads'.</span><br></blockquote><div><br></div><div>Good catch, but actually, that's too weak. i'm requesting something that is <span class="Apple-style-span" style="font-style: italic;">both</span> a monad and a co-monad. That makes it something like a bi-algebra, or a Hopf algebra. This, however, is not the full story. i'm looking for a reference to the full story. Surely, someone has already developed this theory.</div>
<div><br></div><div>Best wishes,</div><div><br></div><div>--greg</div><div><br></div><div><span class="Apple-style-span" style="border-collapse: collapse; ">From: John Meacham <<a href="mailto:john@repetae.net" style="color: rgb(148, 46, 6); ">john@repetae.net</a>><br>
Subject: Re: [Haskell-cafe] monads with take-out options<br>To: <a href="mailto:haskell-cafe@haskell.org" style="color: rgb(148, 46, 6); ">haskell-cafe@haskell.org</a><br>Message-ID: <<a href="mailto:20081124231451.GG32430@sliver.repetae.net" style="color: rgb(148, 46, 6); ">20081124231451.GG32430@sliver.repetae.net</a>><br>
Content-Type: text/plain; charset=utf-8<br><br>On Mon, Nov 24, 2008 at 02:06:33PM -0800, Greg Meredith wrote:<br>> Now, are there references for a theory of monads and take-out options? For<br>> example, it seems that all sensible notions of containers have take-out. Can<br>
> we make the leap and define a container as a monad with a notion of<br>> take-out? Has this been done? Are there reasons for not doing? Can we say<br>> what conditions are necessary to ensure a notion of take-out?<br>
<br>Yes, you are describing 'co-monads'.<br><br>here is an example that a quick web search brought up, and there was a<br>paper on them and their properties published a while ago<br><a href="http://www.eyrie.org/~zednenem/2004/hsce/Control.Comonad.html" target="_blank" style="color: rgb(148, 46, 6); ">http://www.eyrie.org/~zednenem/2004/hsce/Control.Comonad.html</a><br>
<br>the duals in that version are<br><br>extract - return<br>duplicate - join<br>extend - flip (>>=) (more or less)<br><br> John<br><br><br>--<br>John Meacham - ⑆<a href="http://repetae.net" target="_blank" style="color: rgb(148, 46, 6); ">repetae.net</a>⑆john⑈<br>
</span><br>-- <br>L.G. Meredith<br>Managing Partner<br>Biosimilarity LLC<br>806 55th St NE<br>Seattle, WA 98105<br><br>+1 206.650.3740<br><br><a href="http://biosimilarity.blogspot.com">http://biosimilarity.blogspot.com</a><br>
</div>