Message227551
> IMHO, the most straight forward way for a new gcd() function to work would
> be to always, predictably return a non-negative value.
Yes. Any new gcd implementation (in the math module, for example) should definitely return the unique nonnegative gcd of its inputs.
In an effort to concentrate the discussion a bit, here's a specific
proposal, deliberately limited in scope:
1. Add a new (faster) math.gcd function for Python 3.5, taking two integral arguments, and returning the unique nonnegative greatest common divisor of those arguments.
2. Deprecate fractions.gcd in Python 3.5 (with a message suggesting that math.gcd should be used instead), but don't change its behaviour. (The fractions module would likely be using math.gcd by this point.)
3. Remove fractions.gcd in Python 3.6.
I'd suggest that tangents about gcd of more than two arguments, gcd of rational / Decimal / float inputs, etc. be discussed elsewhere. Those are all things that can be added later if there's a real use-case. |
|
Date |
User |
Action |
Args |
2014-09-25 16:44:42 | mark.dickinson | set | recipients:
+ mark.dickinson, terry.reedy, scoder, vstinner, mrabarnett, steven.daprano, akira, wolma, gladman, brg@gladman.plus.com |
2014-09-25 16:44:42 | mark.dickinson | set | messageid: <1411663482.9.0.367326202791.issue22477@psf.upfronthosting.co.za> |
2014-09-25 16:44:42 | mark.dickinson | link | issue22477 messages |
2014-09-25 16:44:42 | mark.dickinson | create | |
|