Revision history for Math-GComplex
0.13 2019-02-07
- Documentation improvements.
- Added the `polar(x)` method, which returns the polar form of `x`.
0.12 2019-01-07
- Added the `round(z)` method to round `z` to the nearest Gaussian integer.
- Added the `gcd(a, b)` method for computing the greatest common divisors of two complex numbers.
- Added the `invmod(n, m)` method for computing the modular multiplicative inverse of two complex numbers.
- Added the `powmod(x, n, m)` method for efficiently computing `x**n % m`, using the exponentiation by squaring method.
0.11 2018-12-13
- Added the `pown` method for computing `x**n` where `n` is a native integer (using the exponentiation by squaring method).
- Added the bitwise methods: `lsft`, `rsft`, `and`, `or`, `xor`, which also provide support for operator overloading of `<<`, `>>`, `&`, `|` and `^`.
0.10 2018-10-13
- Added the `_cartesian` and `_polar` private methods, for basic compatibility with Math::Complex.
- Added the `make` alias for the `new` method, for basic compatibility with Math::Complex.
- Added the `emake` and `cplxe` methods, for basic compatibility with Math::Complex.
0.09 2018-04-09
- The `floor()` and `ceil()` functions are now included in the `:misc` export group.
- Minor documentation tweaks.
0.08 2018-02-09
- Added the `norm()` method.
- Fixed `0**0` and `0**z` special cases in the `pow()` method.
- Handle division by zero in the tan(), cot(), sec() and csc() functions, when the components of a complex number are native Perl numbers.
0.07 2018-01-20
- Fixed the trigonometry tests under Perl built with -Duselongdouble (thanks to Slaven Rezić)
0.06 2018-01-20
- Added the `rad2deg(x)` and `deg2rad(x)` functions.
- Comparing anything to `NaN` (including `NaN` itself), now returns `undef`.
- Minor performance improvements.
0.05 2018-01-06
- Fixed the `floor()` and `ceil()` functions for integer arguments.
- Make sure `Math::AnyNum >= 0.20` is installed. Otherwise skip the `t/anynum.t` test. (thanks to Slaven Rezić for reporting this issue)
0.04 2018-01-05
- Fixed the result of the `atan2(x, y)` function, when `x` and `y` are non-positive numbers.
0.03 2018-01-03
- Added more examples.
- Added subroutine prototypes.
- Division by zero is now handled for native Perl numbers as components of complex numbers.
- Binary numbers are no longer overloaded (such as: `0b101`, `0xff` or `012`).
- Documented the syntax for disabling the `:overload` behavior.
0.02 2018-01-01
- Removed some non-portable tests.
0.01 2018-01-01
- First release.