Sure, and we could argue about whether mutable code is necessary at systems layers. But at application layers (i.e., the ones most developers work at), cost of development is almost always going to come before performance, and I think it's clear by now that OOP, at least insofar as it has been instantiated by Java, C#, and friends, has not delivered on its promise to simplify application development.
most of the alogrithms and datastructures that you learn in CS were developed using mutability.
I am not sure that we can even develop immutable equivalents for most of them with similar time/space complexities.