Kotlin divise la liste en lecture seule de MutableList au niveau du type ; Java.util.List de Java est toujours modifiable via l'interface - les wrappers non modifiables et les méthodes d'usine ajoutent de la discipline. Même histoire pour mapOf vs Map.of. Le regroupement de ces différences vous indique quand l'immuabilité est une promesse au moment de la compilation par rapport à un wrapper d'exécution.
Kotlin : listOf vs mutableListOf