Math::FixedPrecision - Decimal Math without Floating Point Errors
There are numerous instances where floating point math is unsuitable, yet the
data does not consist solely of integers. This module is designed to completely
overload all standard math functions. The module takes care of all conversion
and rounding automatically. Rounding is handled using the IEEE 754 standard
even mode. This is a complete rewrite to use Math::BigFloat, rather than
Math::BigInt to handle the underlying math operations.
WARNING: In order for all tests to complete successfully, you must replace
the core BigFloat.pm and BigInt.pm with the one located in this distribution.
These files will also be updated as part of the 5.6.1 distribution, when that
is released. Please copy the included Big(Float|Int).pm to {PERLVERSION}/lib/Math/.
This module is not a replacement for Math::BigFloat; rather it serves a similar
but slightly different purpose. By strictly limiting precision automatically,
this module operates slightly more natually than Math::BigFloat when dealing
with floating point numbers of limited accuracy. Math::BigFloat can
unintentially inflate the apparent accuracy of a calculation.
Please examine assumptions you are operating under before deciding between this
module and Math::BigFloat. With this module the assumption is that your data
is not very accurate and you do not want to overstate any resulting values;
with Math::BigFloat, you can completely avoid the rounding problems associated
with floating point notation.
To install, do the usual:
perl Makefile.PL
make
make test
make install
Please see the POD file for more details.
John Peacock
jpeacock@rowman.com