I like the idea of immutability and I'm glad you highlighted it.
I think one of the better things to happen to software engineering is that people got a bit more afraid of mutable state. Having immutable objects really rules out a lot of problems.
It's also one of the nice innovations in Kotlin compared to Java: 1) lists are immutable by default, and 2) trying to mutate them is a compile error, rather than runtime.
I like the statically-typed version more, but it's good to see it can be used in Javascript.