úÎìo(c) Levent ErkokBSD3erkokl@gmail.com experimentalNone*Due to intricacies of conversion between Float and Double types (see  +http://ghc.haskell.org/trac/ghc/ticket/3676?), we explicitly introduce a class to do the reading properly./Convert a hex-float from a string, if possible.…Read a float in hexadecimal binary format. Supports negative numbers, and nan/infinity as well. For regular usage, the quasiquoter (R) should be employed. But this function can be handy for programmatic interfaces.\Turn a hexadecimal float to an internal double, if parseable. Does not support the leading Ž bit, although it does allow a leading +. (The former is best done out of the quasiquote, since TH does not cannot represent negative 0! See  -https://ghc.haskell.org/trac/ghc/ticket/13124 for why we avoid this here.)=A quasiquoter for hexadecimal floating-point literals. See:  9http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1256.pdf›, pages 57-58. We slightly diverge from the standard and do not allow for the "floating-suffix," as the type inference of Haskell makes this unnecessary.Example: i{-# LANGUAGE QuasiQuotes #-} import Data.Numbers.FloatingHex f :: Double f = [hf|0x1.f44abd5aa7ca4p+25|]With these definitions, f will be equal to the number 6.5574266708245546e7FShow a floating-point value in the hexadecimal format, similar to the %a specifier in C's printf. showHFloat (212.21 :: Double) """0x1.a86b851eb851fp7"showHFloat (-12.76 :: Float) """-0x1.9851ecp3"showHFloat (-0 :: Double) "" "-0x0p+0"The Double instanceThe Float instance  &FloatingHex-0.4-FwMa4PFgDdzIADZT6ThyJJData.Numbers.FloatingHexFloatingHexReader readHFloathf showHFloat$fFloatingHexReaderDouble$fFloatingHexReaderFloatreadHFloatAsDouble parseHexFloatbaseGHC.Num-