in reply to More Fun with Zero!
In the future, with typed values and compiled code, it gets messy. SV-based generic code would return undef, integer code would hit a hardware exception unless it took pains to check every single divisor before doing it, which goes against the reason for compiling down to strongly-typed values.
One of the things I saw mentioned for Perl 6 is "Standardise Handling Of Abnormal Numbers Like Infinities And NaNs". See Perl RFC 38.
If division by zero returned not undef but a special known value representing the indeterminte form, it might get swollowed without ever causing a problem if you multipy by zero or something like that; or you get a suitable error later.
—John
|
---|