Kotlin 的兼容性政策是什么?

What's Kotlin's compatibility policy?

一旦 Kotlin 1.0 出来,兼容性策略是什么?作为用户,我希望 Kotlin 能够保持兼容性,无论是源代码还是二进制文件。和Java一样严肃。

相比之下,Scala 是一个糟糕的例子。未能保持次要版本之间的二进制兼容性使我离开了。而且我相信很多用户离开 Scala 的部分原因是它的兼容性问题。这导致许多库(包括我当时的 SBT)无法为整个系列的 Scala 版本提供一套完整的发行版。这只是二进制兼容性问题。想象一下如果源兼容性被破坏。

我决定在我公司的商业项目中使用 Kotlin。所以我真的需要确定 Kotlin 是认真保持兼容性,而不是追求美。

Kotlin 尚未发布(UPD:now it is)。预计语言会发生变化(甚至会破坏代码和二进制兼容性的变化)。

随着 Beta 版的发布,二进制格式已经最终确定,因此我们不应该再期待那里的变化(但如果必须修复错误,它们可能仍然会发生)。

1.0 发布后,语言和二进制格式应该永远向后兼容。

来源:http://blog.jetbrains.com/kotlin/2015/11/the-kotlin-language-1-0-beta-is-here/