Math::BigInt::Calc - pure Perl module to support Math::BigInt
# to use it with Math::BigInt
use Math::BigInt lib => 'Calc';
# to use it with Math::BigFloat
use Math::BigFloat lib => 'Calc';
# to use it with Math::BigRat
use Math::BigRat lib => 'Calc';
# explicitly set base length and whether to "use integer"
use Math::BigInt::Calc base_len => 4, use_int => 1;
use Math::BigInt lib => 'Calc';
Math::BigInt::Calc inherits from Math::BigInt::Lib.
In this library, the numbers are represented interenally in base B = 10**N,
where N is the largest possible integer that does not cause overflow in the
intermediate computations. The base B elements are stored in an array, with the
least significant element stored in array element zero. There are no leading
zero elements, except a single zero element when the number is zero. For
instance, if B = 10000, the number 1234567890 is represented internally as
[7890, 3456, 12].
When the module is loaded, it computes the maximum exponent, i.e., power of 10,
that can be used with and without ``use integer'' in the computations. The default
is to use this maximum exponent. If the combination of the 'base_len' value and
the 'use_int' value exceeds the maximum value, an error is thrown.
- base_len
-
The base length can be specified explicitly with the 'base_len' option. The
value must be a positive integer.
use Math::BigInt::Calc base_len => 4; # use 10000 as internal base
- use_int
-
This option is used to specify whether ``use integer'' should be used in the
internal computations. The value is interpreted as a boolean value, so use 0 or
``'' for false and anything else for true. If the 'base_len' is not specified
together with 'use_int', the current value for the base length is used.
use Math::BigInt::Calc use_int => 1; # use "use integer" internally
This overview constains only the methods that are specific to
Math::BigInt::Calc. For the other methods, see the Math::BigInt::Lib manpage.
- _base_len()
-
Specify the desired base length and whether to enable ``use integer'' in the
computations.
Math::BigInt::Calc -> _base_len($base_len, $use_int);
Note that it is better to specify the base length and whether to use integers as
options when the module is loaded, for example like this
use Math::BigInt::Calc base_len => 6, use_int => 1;
the Math::BigInt::Lib manpage for a description of the API.
Alternative libraries the Math::BigInt::FastCalc manpage, the Math::BigInt::GMP manpage,
the Math::BigInt::Pari manpage, the Math::BigInt::GMPz manpage, and the Math::BigInt::BitVect manpage.
Some of the modules that use these libraries the Math::BigInt manpage,
the Math::BigFloat manpage, and the Math::BigRat manpage.
|