The standard approach to get a Math::BigInt object with a new value, is to make a new Math::BigInt object. Sorry. Even the result of adding two Math::BigInt objects is a new Math::BigInt.
Are you using the default Math::BigInt driver? Because that one is in Pure Perl, Math::BigInt::Calc...
Use one of the available XS libraries to speed it up, Math::BigInt::BitVect (requires Bit::Vector), Math::BigInt::Pari, or Math::BigInt::GMP. From what I gather, Math::BigInt::FactCalc would be an option too. No I have no idea on which is the fastest option.
If you need precompiled binaries, see which one is available for your platform. For ActivePerl/Win32, I can only find precompiled binaries for Math::Bigint::BitVect, so that looks like the best option there.
I also stumled across a PPM distribution for something called Math::BigIntFast, another wrapper around Bit::Vector by Steffen Beyer, who also made the latter, which isn't available through a normal CPAN search, yet it is on CPAN. I don't know what is going on there.
See also: Re: Predict Random Numbers
In reply to Re: Changing the value of a BigInt?
by bart
in thread Changing the value of a BigInt?
by taintme
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |