Changes for version 2.000000 - 2023-10-29

  • Merge the Math-BigRat distribution into the Math-BigInt distribution. This merge eliminates the problems that users have experienced when incompatible versions of the two distributions have been installed. This fixes CPAN RT #143228.
  • Add method from_dec() to Math::BigRat to make Math::BigRat more consistent with Math::BigInt and Math::BigFloat.
  • To be consistent with Math::BigInt and Math::BigFloat, make it possible to use "require" with Math::BigRat, e.g.,
    • require Math::BigRat; $x = Math::BigRat -> bone();
    • Fix cases where "require" doesn't work for Math::BigInt and Math::BigFloat, and add tests to verify that "require" works for Math::BigInt, Math::BigRat, and Math::BigFloat.
    • Add methods bblsft() and bbrsft() to Math::BigRat to make Math::BigRat consistent with Math::BigInt and Math::BigFloat. These methods do bitwise left and right shift, respectively.
    • Fix bug in to_oct() and to_bin() in Math::BigFloat. They called to_hex() when upgrading, but should have called to_oct() and to_bin(), respectively.
    • Add to_hex(), to_oct(), to_bin() to Math::BigRat.
    • Add new method binv() to Math::BigInt, Math::BigFloat, and Math::BigRat.
    • Improve as_float() and as_rat().
    • POD updates.

Modules

arbitrary size floating point math package
arbitrary size integer math package
pure Perl module to support Math::BigInt
virtual parent class for Math::BigInt libraries
arbitrary size rational number math package