Math::BigInt::FastCalc - Math::BigInt::Calc with some XS for more speed
Math::BigInt::FastCalc inherits from Math::BigInt::Calc.
Provides support for big integer calculations. Not intended to be used by other modules. Other modules which sport the same functions can also be used to support Math::BigInt, like Math::BigInt::GMP or Math::BigInt::Pari.
In order to allow for multiple big integer libraries, Math::BigInt was rewritten to use library modules for core math routines. Any module which follows the same API as this can be used instead by using the following:
- use Math::BigInt lib => 'libname';
'libname' is either the long name ('Math::BigInt::Pari'), or only the short version like 'Pari'. To use this library:
- use Math::BigInt lib => 'FastCalc';
Math::BigInt::FastCalc works exactly like Math::BigInt::Calc. Numbers are stored in decimal form chopped into parts.
The following functions are now implemented in FastCalc.xs:
- _is_odd _is_even _is_one _is_zero
- _is_two _is_ten
- _zero _one _two _ten
- _acmp _len
- _inc _dec
- __strip_zeros _copy
Please report any bugs or feature requests to
bug-math-bigint-fastcalc at rt.cpan.org
, or through the web interface at
We will be notified, and then you'll automatically be notified of progress on
your bug as I make changes.
You can find documentation for this module with the perldoc command.
- perldoc Math::BigInt::FastCalc
You can also look for information at:
bignum at lists.scsys.co.uk
This program is free software; you may redistribute it and/or modify it under the same terms as Perl itself.
Original math code by Mark Biggar, rewritten by Tels http://bloodgate.com/ in late 2000. Separated from BigInt and shaped API with the help of John Peacock.
Fixed, sped-up and enhanced by Tels http://bloodgate.com 2001-2003. Further streamlining (api_version 1 etc.) by Tels 2004-2007.
Bug-fixing by Peter John Acklam <email@example.com> 2010-2016.
Math::BigInt::Lib for a description of the API.