The compensated package

[Tags:bsd3, library]

This package provides compensated floating point arithmetic.

[Skip to Readme]


Versions 0.1, 0.1.1,, 0.2,, 0.3, 0.4.1, 0.5, 0.6, 0.6.1, 0.7, 0.7.1, 0.7.2
Change log CHANGELOG.markdown
Dependencies base (>=4.3 && <5), bifunctors (==4.*), binary (>=0.5 && <0.8), bytes (>=0.7 && <1), cereal (>=0.3.5 && <0.5), comonad (==4.*), deepseq (==1.3.*), distributive (>=0.3 && <1), generic-deriving (>=1.4 && <1.7), hashable (>= && <1.3), lens (==4.*), log-domain (>=0.8 && <1), safecopy (>=0.8.1 && <0.9), semigroupoids (==4.*), semigroups (>=0.8.4 && <1), vector (>=0.9 && <0.11) [details]
License BSD3
Copyright Copyright (C) 2013 Edward A. Kmett
Author Edward A. Kmett
Maintainer Edward A. Kmett <>
Category Numeric
Home page
Bug tracker
Source repository head: git clone git://
Uploaded Fri Apr 4 10:32:07 UTC 2014 by EdwardKmett
Distributions LTSHaskell:0.7.2, NixOS:0.7.2
Downloads 2702 total (86 in the last 30 days)
1 []
Status Docs available [build log]
Successful builds reported [all 1 reports]
Hackage Matrix CI





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


Maintainer's Corner

For package maintainers and hackage trustees

Readme for compensated

Readme for compensated-0.6


Build Status

This package provides a form of compensated arithmetic that lets you perform many operations on chains of doubles at higher precision.

In particular addition, multiplication, etc. on a Compensated Double is done with twice as many bits of significand as on a raw Double.

This construction is designed so that it can be iterated.

This was forked from the analytics repository after repeated requests.

Work still needs to be done to properly support most Floating operations, but everything below that level of the numeric hierarchy should work.

Contact Information

Contributions and bug reports are welcome!

Please feel free to contact me through github or on the #haskell IRC channel on

-Edward Kmett