Message 61371 - Python tracker

This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Content
George:  I think my last post was a bit rude.  I apologize if it came across that way.

Mathematical rigor and IEEE-754 recommendations aren't necessarily in conflict here, 
though.  For example, the natural log function from (0, infinity) to (-infinity, 
infinity) extends naturally and uniquely to a continuous function on the closed subset 
[0, infinity] of the extended real line---i.e., the real line together with the two extra 
points -infinity and infinity.  With the appropriate topology, the extended real line is 
a perfectly well-defined and well-behaved mathematical object, though of course it's no 
longer a field.  Since IEEE-754 floats include infinities, it's reasonable, and sometimes 
useful, to regard the set of IEEE-floats as a computational model of the extended real 
line instead of the reals.

At any rate, I agree with you that log(0) and atanh(1) should raise Python exceptions, at 
least for now.  But these calculations are qualitatively different from log(-1) and 
atanh(2), and it wouldn't be at all unreasonable if they raised a different exception---
e.g. ZeroDivisionError instead of ValueError.