why did GMPY change the names of its functions?
casevh at gmail.com
casevh at gmail.com
Mon Mar 26 14:33:17 EDT 2012
On Sunday, March 25, 2012 9:59:56 PM UTC-7, Mensanator wrote:
> OK, GMPY is now called GMPY2. No big deal, I can import as GMPY.
>
> But why were scan0 and scan1 changed to bit_scan0 and bit_scan1?
>
> What's the justification for that? I use those functions extensively
> in my library of Collatz utilities and I had to re-edit them for no
> obvious reason.
I'll speak up as the maintainer of GMPY and GMPY2.
(My comments apply to the beta1 release which should be out in a couple of days.)
GMPY2 introduces many changes:
1) the limited "mpf" type that is based on GMP has been replaced with the "mpfr" type from the MPFR library
2) support for multiple-precision complex arithmetic based on the MPC library
3) support for a mutable integer type optimized for in-place bit manipulations
4) support for addition number theory functions (generalized Lucas sequences and more primality tests
I began to encounter name collisions; for example, should sqrt() only return integer square roots. I chose to call it a new name (gmpy2) and update the API to reflect new choices I made. For example, sqrt() now returns an "mpfr" and isqrt() returns an "mpz".
As part of the documentation for the beta release, I will document the name changes. "import gmpy2 as gmpy; gmpy.scan0=gmpy.bit_scan0; etc" should work just fine.
If you encounter problems with the alpha release, please open an issue on gmpy's site.
Thanks,
casevh
On Sunday, March 25, 2012 9:59:56 PM UTC-7, Mensanator wrote:
> OK, GMPY is now called GMPY2. No big deal, I can import as GMPY.
>
> But why were scan0 and scan1 changed to bit_scan0 and bit_scan1?
>
> What's the justification for that? I use those functions extensively
> in my library of Collatz utilities and I had to re-edit them for no
> obvious reason.
On Sunday, March 25, 2012 9:59:56 PM UTC-7, Mensanator wrote:
> OK, GMPY is now called GMPY2. No big deal, I can import as GMPY.
>
> But why were scan0 and scan1 changed to bit_scan0 and bit_scan1?
>
> What's the justification for that? I use those functions extensively
> in my library of Collatz utilities and I had to re-edit them for no
> obvious reason.
On Sunday, March 25, 2012 9:59:56 PM UTC-7, Mensanator wrote:
> OK, GMPY is now called GMPY2. No big deal, I can import as GMPY.
>
> But why were scan0 and scan1 changed to bit_scan0 and bit_scan1?
>
> What's the justification for that? I use those functions extensively
> in my library of Collatz utilities and I had to re-edit them for no
> obvious reason.
More information about the Python-list
mailing list