benleggiero
03/02/2018, 2:42 AMlet, and the intuitive, AFAICT flawless copy-on-write behavior that unlocks so much peace-of-mind especially when dealing with concurrency, and how you can define functions as mutating and then they won't be usable on immutable objects, removing the need for separate Foo and MutableFoo types.
It's such a defining feature of the language in a way other non-ObjC features (like protocol extensions, true genetics, and guard statements) aren't. And it's all so easy to use that it feels just right, like it's no big deal as you say.