Am 02/10/2013 12:11 AM, schrieb Andrea Pescetti:
A good practical example of backwards-incompatible changes in version
4.0 is the behavior of Calc while computing 0 ^ 0.

You can find a long issue, with different points of view, about this at:
https://issues.apache.org/ooo/show_bug.cgi?id=114430
but in short:
- Obviously, 0 ^ 0 is an illegal operation in mathematics and the result
is undefined/invalid
- In 3.4.1, "=0 ^ 0" returns 1
- In 4.0, as patched by Pedro (see issue), "=0 ^ 0" would return an error
- According to ODF, valid results are 0, 1, error
- We gain interoperability since Excel returns an error too
- We lose backwards compatibility if someone was relying on the fact
that OpenOffice returns 1 as the result of "=0 ^ 0"

I'm OK with the proposed change, provided we advertise it in the release
notes. I'm not aware of any cases where someone is actively using the
fact that in Calc 0 ^ 0 evaluates to 1, and even if someone did, I would
say that his spreadsheets should not compute 0 ^ 0 at all. A side
benefit would be that school students quickly wanting to find out what
is the result of 0 ^ 0 would be told the truth (it's an error) instead
of being presented with a numeric result and no warnings. (Then the
student would go on and write "= - 2 ^ 2" and have a lot of fun, but
this is out of scope here).

Right, the change has a *very* narrow and limited group of users. I mean not the power function itself but the result of "0 ^ 0".

Is there consensus that this is a reasonable backwards-incompatible
change, or compelling reasons to revert it?

I don't see any problem to change the behavior for *this special* case. Before it was behaving within the ODF standard and after the commit it's still the same. And when we can improve the interoperability with MS Office - even if it's just 0.5% - then even better.

So, +1 to keep Pedro's change.

Marcus

Reply via email to