The hype surrounding immutable objects
twitter.com
twitter.com
We spent a while trying to move from an admittedly terrible Redux implementation with lots of fine immutable usage, to graphql. It has been a disaster. Immutable in particular we have found has been hugely responsible for keeping things fast; it's been a pillar holding up our world.
The ability to cache fine grained intermediary results has been epic. It's almost impossible to imagine what else would give us this. We'd need, like, very fine grained signals, that can deal with data being inserted/chmaged/removed from collections.
But if you take it too far, you pay for it elsewhere, because immutability means you ignore change i.e. "time". And without change, your app is useless.