Math::BigInt::FastCalc - Math::BigInt::Calc with some XS for more speed
# to use it with Math::BigInt use Math::BigInt lib => 'FastCalc'; # to use it with Math::BigFloat use Math::BigFloat lib => 'FastCalc'; # to use it with Math::BigRat use Math::BigRat lib => 'FastCalc';
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 https://rt.cpan.org/Ticket/Create.html?Queue=Math-BigInt-FastCalc (requires login). 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.
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 <firstname.lastname@example.org> 2010-2016.
Math::BigInt::Lib for a description of the API.