fp-ieee: IEEE 754-2019 compliant operations

[ bsd3, library, math, numeric ] [ Propose Tags ]

Please see the README on GitHub at https://github.com/minoki/haskell-floating-point/tree/master/fp-ieee#readme


[Skip to Readme]
Versions [RSS] [faq] 0.1.0, 0.1.0.1
Change log ChangeLog.md
Dependencies base (>=4.12 && <5), ghc-bignum (==1.0.*), integer-gmp (==1.0.*), integer-logarithms (>=1 && <1.1) [details]
License BSD-3-Clause
Copyright 2020-2021 ARATA Mizuki
Author ARATA Mizuki
Maintainer minorinoki@gmail.com
Category Numeric, Math
Home page https://github.com/minoki/haskell-floating-point#readme
Bug tracker https://github.com/minoki/haskell-floating-point/issues
Source repo head: git clone https://github.com/minoki/haskell-floating-point
Uploaded by aratamizuki at 2021-01-02T06:35:17Z
Distributions NixOS:0.1.0.1
Downloads 125 total (17 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Hackage Matrix CI
Docs uploaded by user
Build status unknown [no reports yet]

Modules

[Index] [Quick Jump]

Manual Flags

NameDescriptionDefault
f16c

Use F16C instructions on x86

Disabled
float128

Support Float128 via float128 package

Disabled
fma3

Use FMA3 instructions on x86

Disabled
half

Support Half (float16) via half package

Disabled
pure-hs

Disable FFI

Disabled
sse4_1

Use SSE4.1 instructions on x86

Disabled
Automatic Flags
NameDescriptionDefault
ghc-bignum

Use ghc-bignum package

Enabled
integer-gmp

Use integer-gmp package

Enabled

Use -f <flag> to enable a flag, or -f -<flag> to disable that flag. More info

Downloads

Maintainer's Corner

For package maintainers and hackage trustees

Candidates


Readme for fp-ieee-0.1.0.1

[back to package description]

fp-ieee: IEEE 754 operations for floating-point types

This library provides IEEE 754-compliant operations, including

  • fusedMultiplyAdd.
  • correctly-rounding versions of fromInteger.
  • realFloatToFrac, which correctly handles signed zeros, infinities, and NaNs (unlike realToFrac).

Some operations (e.g. fusedMultiplyAdd) can make use of the native instruction in the architecture.

For non-native targets, "Pure Haskell" mode is supported via a package flag.

Most operations require only RealFloat constraint, but RealFloatNaN is needed by some operations that access the sign and payload of NaNs.