0091fb2bd1
Upstream changes: 1.999825 2021-09-28 * Make Math::BigInt accept integers regardless of whether they are written as decimal, binary, octal, or hexadecimal integers or decimal, binary, octal, or hexadecimal floating point number. * When numeric constants are overloaded (with the ":constant" option) in Math::BigInt, every numeric constant that represent an integer is converted to an object regardless of how it is written. All finite non-integers are converted to a NaN. * When numeric constants are overloaded (with the ":constant" option) in Math::BigFloat, every numeric constant is converted to an object regardless of how it is written. * Add method from_dec() (cf. from_bin(), from_oct(), and from_hex()). It is like new() except that it does not accept anything but a string representing a finite decimal number. 1.999824 2021-09-20 * Don't allow mixing math libraries. Use the first backend math library that is successfully loaded, and ignore any further attempts at loading a different backend library. This is a solution to the re-occurring problem of using objects using different math libraries. * Add missing documentation. * Miscellaneous minor improvements. 1.999823 2021-07-12 * Improve the handling of the backend libraries. Provide more useful warnings and error messages. Update the documentation. 1.999822 2021-07-09 * Make the from_hex(), from_oct(), and from_bin() methods consistent with CORE::oct(), which does not require a leading "0" before the letter ("x", "o", or "b"). * Make the from_oct() and new() methods accept octal numbers with prefix "0o", "0O", "o" (lowercase letter o), and "O" (capital letter O). * Make the from_bin() and new() methods accept binary numbers with prefix "0b", "0B", "b", and "B". * Make the from_hex() and new() methods accept hexadecimal numbers with prefix "0x", "0X", "x", and "X". * Update test files to match with the above. 1.999821 2021-07-06 * Make new() and from_hex() accept the "0X" prefix, not just the "0x" prefix, but not accept just "X" or "x". Now, "0XFF" returns 255, not NaN. * Make new() and from_bin() accept the "0B" prefix, not just the "0b" prefix, but not accept just "B" or "b". Now, "0B1111" returns 255, not NaN. * Make new() and from_oct() accept the "0o" and "0O" prefixes, but not accept just "O" (capital letter O) or "o" (lowercase letter o). Now, "0o377" and "0O377" return 255, not NaN. Also intepret floating point numbers with a leading zero and a binary exponent as an octal number, so that "01.4p0" returns 1.5, not NaN. There is still no ambiguety, since decimal floating point numbers use "e" or "E" before the exponent, and binary and hexadecimal floating point numbers use a "0b"/"0B" or "0x"/"0x" prefix, respectively. 1.999820 2021-07-06 * Fix bug and improve error messages in Math::BigInt::import(). 1.999819 2021-07-02 * Add method btfac() (triple factorial) and bmfac() (multi-factorial), including tests and documentation. * Add missing and correct erroneous documentation for bfac() (factorial) and bdfac() (double factorial). Also correct handling of special cases and add tests for these cases. * Fix error in bsin() and bcos() causing them to hang indefinitely if the invocand is +/-inf. * Make it possible for the end user to specify the base length used internally in Math::BigInt::Calc. |
||
---|---|---|
.. | ||
DESCR | ||
distinfo | ||
Makefile |