We need to remember that a significant number of Python users don't have any idea what IEE-754 is, and have never heard of a NaN (and possibly even of infinity as a number). Those people are *far* better served by being told "you made a mistake" in the form of an exception, rather than via a weird numeric value that doesn't work how they expect and doesn't even look like a number when they print it.
Paul
My feeling is that both viewpoints can be satisfied by having a context whereby if USE_IEEE_SPECIAL_VALUES (to pick a random name) is False (the default) such operations will raise an exception but if it is True INF, -INF or NaN is returned (ideally with some debug output – this would be in the spirit of the IEEE Signalling NaN). Steve Barnes