Android библиотеки вспомогательной кодогенерации, такие как Android Annotations или мой любимый Icepick, которые разработчики привыкли использовать для упрощения написания, не готовы были сразу подружиться с Kotlin-кодом, так как большинство из них требует держать поля с модификатором package private. Конечно, ничего страшного писать
@JvmField @State
internal var carName: String? = null
вместо
@State String carName;
Но лучше вспомнить, что Kotlin к нам пришёл для упрощением кода, а не наоборот.
Читать полностью »