Quick update: version 0.2 of FloatingHex is now on hackage (http://hackage.haskell.org/package/FloatingHe ) which fixes a few glitches and makes the pretty-printer compatible with C's %a modifier. This brings the support on par with that in C/C++. The quasi-quoter is called qf, and the pretty-printer is called showHFloat, following the naming of other float-printers already available.x On Sat, Jan 14, 2017 at 1:10 AM, Levent Erkok <erkokl@gmail.com> wrote:FloatingHex (http://hackage.haskell.org/package/FloatingHex ) is a simple package that implement hexadecimal notation for floating point numbers, as described in p57-58 of http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1256.pdf The package provides a quasi-quoter for hexadecimal floats: hf, and a pretty-printer for floats to show them in this notation: showFFloat. (Note that the latter is not 100% compatible with C's %a modifier for printf, but it does render a faithful representation of its input.)Hex-floats are useful as they allow writing floating-point constants without any loss of precision, while remaining human readable. For instance, the float 2 is written as 0x1p1. (With the quasiquoter, the syntax is [hf|0x1p1|].) This representation is to be preferred over decimal rendering where loss of precision can be a problem: Note that not all floating point numbers have a terminating decimal representation as currently required by the Haskell syntax.It would be nice if Haskell itself allowed for such literals in the language specs itself, following the recent changes to other language standards. (Again, see p57-58 of http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1256.pdf for the new C standard.) In the mean time, I hope FloatingHex library will provide a workaround for the numerophilias amongst us.Bug reports and improvements always welcome!Cheers,-Levent.
_______________________________________________
Haskell-Cafe mailing list
To (un)subscribe, modify options or view archives go to:
http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell- cafe
Only members subscribed via the mailman list are allowed to post.