<div>I want to group them with Network functions because traditionally these <span class="Apple-style-span" style="font-family: arial, helvetica, sans-serif;">specific functions *are* in networking packages.</span></div><div>
<span class="Apple-style-span" style="font-family: arial, helvetica, sans-serif;"><br></span></div><div><span class="Apple-style-span" style="font-family: arial, helvetica, sans-serif;">On *nix systems, the prototypes reside in&nbsp;</span><span class="Apple-style-span" style="font-size: 12px; white-space: pre; "><span class="Apple-style-span" style="font-family: arial, helvetica, sans-serif;">&lt;netinet/in.h&gt;. On Windows they reside in &lt;winsock2.h&gt; and one must link against libws2_32.</span></span></div>
<div><span class="Apple-style-span" style="font-size: 12px; white-space: pre;"><br></span></div><div><span class="Apple-style-span" style="font-size: 12px; white-space: pre;">The package I have locally supports all platforms. It just does a foreign import of the function (and uses a preprocessor definition to pick the calling convention).</span></div>
<div><span class="Apple-style-span" style="font-size: 12px; white-space: pre;"><br></span></div><div><span class="Apple-style-span" style="font-size: 12px; white-space: pre;">One could make an argument to add these sorts of functions to Word and Int packages.</span></div>
<span class="Apple-style-span" style="font-family: arial, helvetica, sans-serif;"><br clear="all">/jve</span><br>
<br><br><div class="gmail_quote">On Sat, Dec 27, 2008 at 7:14 PM, Chris Kuklewicz <span dir="ltr">&lt;<a href="mailto:haskell@list.mightyreason.com">haskell@list.mightyreason.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex;">
Are these going to be available on Windows or just Posix systems?<br>
<br>
And these are NOT performing network communication. &nbsp;They are bit manipulations.<br>
<br>
I could imagine putting them in/under the Data.Word or Data.Bits more than Network.*<br>
<br>
And they should also be made to work with the corresponding Foreign.C.Types of CShort, etc.<br>
<br>
<br>
John Van Enk wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="Ih2E3d">
While working on a project, I discovered that hton[sl] and ntoh[sl] are missing from the networking libraries. It appears there was some justification for this, but I&#39;ve fallen upon a few instances where things were *not* working as expected. (Specifically when newtype&#39;ing around HostAddress.)<br>

<br>
As such, I&#39;m putting together a few extra functions that I think should exist in Network somewhere. I&#39;m calling the package Network.Util (but am open to changes).<br>
<br>
Currently this only has:<br>
<br>
 &nbsp; &nbsp;* htons<br>
 &nbsp; &nbsp;* htonl<br>
 &nbsp; &nbsp;* ntohs<br>
 &nbsp; &nbsp;* ntohl<br>
<br>
Before I drop this on hackage:<br>
<br></div>
 &nbsp; 1. Is there a reason I shouldn&#39;t do this?<br>
 &nbsp; 2. Are there other suggestions for missing functions? (preferably<div class="Ih2E3d"><br>
 &nbsp; &nbsp; &nbsp;cross-platform suggestions)<br>
<br>
Thanks all.<br>
<br>
/jve<br>
<br>
<br></div>
------------------------------------------------------------------------<br>
<br>
_______________________________________________<br>
Haskell-Cafe mailing list<br>
<a href="mailto:Haskell-Cafe@haskell.org" target="_blank">Haskell-Cafe@haskell.org</a><br>
<a href="http://www.haskell.org/mailman/listinfo/haskell-cafe" target="_blank">http://www.haskell.org/mailman/listinfo/haskell-cafe</a><br>
</blockquote>
<br>
</blockquote></div><br>