<div class="gmail_quote">On Mon, Jun 22, 2009 at 1:52 PM, Thomas DuBuisson <span dir="ltr">&lt;<a href="mailto:thomas.dubuisson@gmail.com">thomas.dubuisson@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">

Johan - glad you chimed in!<br>
<br>
I&#39;m all in favor of keeping a low level interface and don&#39;t have an<br>
issue with Network.Socket existing,  I additionally really like the<br>
suggestion of moving from the ML to a wiki in the same style as<br>
Haskell&#39;.<br>
<br>
I&#39;ll port these comments to the wiki if that is whats agreed on and<br>
hold off on other thoughts for now.</blockquote><div><br>Yes, please start a new wiki page. We can still discuss issues here and add things to the wiki as different solutions materialize.<br> </div><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">


* Avoiding a &#39;heavy weight&#39; solution for socket state might get ugly<br>
fast with all the &#39;Either a b&#39; results that we&#39;ll need - also a socket<br>
can close at any time so a socket in &#39;Connected&#39; state might not<br>
actually be connected.  I understand the attraction to a light<br>
solution using existential types but Tim Sheard sketched for me a<br>
reasonable alternative which I invite him to restate here, if he has<br>
the time.<br>
</blockquote></div><br>Good point. The encodings using existential types are not very lightweight in my opinion. I&#39;d love to hear Tim&#39;s alternative.<br><br>-- Johan<br><br>