<div dir="auto">This is really cool! </div><div dir="auto"><br></div><div dir="auto">Is the fall back strategy to do Kahn style compensated arithmetic.  Similar to in Edward Kmett’s compensated library on hackage?</div><div dir="auto"><br></div><div dir="auto">I like how you have both styles of NaN semantics for min and max, with the default being NaN poisoning but also providing the NaN avoiding one some software needs to do. </div><div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, Dec 28, 2020 at 7:06 AM ARATA Mizuki <<a href="mailto:minorinoki@gmail.com">minorinoki@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi all,<br>
<br>
I'd like to announce the first release of fp-ieee.<br>
<br>
<a href="https://hackage.haskell.org/package/fp-ieee" rel="noreferrer" target="_blank">https://hackage.haskell.org/package/fp-ieee</a><br>
<br>
This library aims to provide IEEE 754-2019 compliant operations, including<br>
<br>
* fusedMultiplyAdd<br>
<br>
* correctly-rounding versions of fromInteger (GHC's fromInteger for Float and Double do not round correctly; see <a href="https://gitlab.haskell.org/ghc/ghc/-/issues/17231" rel="noreferrer" target="_blank">https://gitlab.haskell.org/ghc/ghc/-/issues/17231</a>)<br>
<br>
* realFloatToFrac: an alternative of realToFrac with well-defined semantics.<br>
<br>
Other notes:<br>
<br>
* Most of the functions are generic, and any RealFloat instance can be used. However, manipulation of NaN's sign and payload requires an additional constraint (RealFloatNaN, provided by this library).<br>
<br>
* Access to floating-point environment is not provided. If you want to control rounding direction, look at my another library: <a href="https://hackage.haskell.org/package/rounded-hw" rel="noreferrer" target="_blank">https://hackage.haskell.org/package/rounded-hw</a><br>
<br>
* Decimal-specific operations (like quantize, quantum) are not provided, and the preferred exponent is not honored.<br>
<br>
* Use of FFI can be disabled via a package flag (maybe useful when using non-native targets).<br>
<br>
<br>
Mizuki<br>
<br>
_______________________________________________<br>
Haskell-Cafe mailing list<br>
To (un)subscribe, modify options or view archives go to:<br>
<a href="http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe" rel="noreferrer" target="_blank">http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe</a><br>
Only members subscribed via the mailman list are allowed to post.</blockquote></div></div>