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:
but in short:
- Obviously, 0 ^ 0 is an illegal operation in mathematics and the result
- 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).
Is there consensus that this is a reasonable backwards-incompatible
change, or compelling reasons to revert it?