Backward compatibility sounds nice, but it's not so easy to respect it in big projects. And the whole interest is on big projects: it's maybe not such a problem if your grand-ma's blog breaks its API on each release, but there would be a revolution (or not?) if win32 API was changing on each enslavement service pack microsoft releases.

Here is a real story case study of a BC break that happened on the PHP language itself.