
I'm looking at data-binary-754 right now, and it seems pretty
complicated. Why don't they just cast the values bitwise to integers
and then serialize those? Forgive my naivete-- I don't know much
about binary encoding issues.
I went the route of implementing everything in C and then using the
FFI. There's a lot of lot of bit-twiddling involved when you work
with the guts of IEEE754, which is a lot easier to do in C. See
http://github.com/patperry/hs-ieee/blob/master/cbits/feqrel_source.c
for a truly ugly example. I ported this code from the Tango math
library for D (
http://www.dsource.org/projects/tango/browser/trunk/tango/math/IEEE.d
). It's original author, Don Clugston, claims that the function is
about as fast as a ">" comparison. Haskell's great, but I don't think
it could get nearly as fast for a function like this.
Patrick
On Sun, Sep 19, 2010 at 11:16 PM, Conrad Parker
On 20 September 2010 11:18, Patrick Perry
wrote: Given that IEEE is actually a standards body and they have many standards, wouldn't it be more appropriate to call this library ieee754?
If it seems important to people, I'd be happy to change the name. I'm not religious about these things. Will it clutter up hackage, though?
I reckon it's worth making it obvious that this library does 754 and not, say, 1394 or 802.11 ;-) On the other hand if you intend on expanding the package to implement every IEEE standard ... (j/k)
Anyway, good work. Does this have any overlap with data-binary-ieee754? There was some recent discussion here about the encoding speed in that package.
Conrad.