Immutability is a technique or pattern, not a language feature. It can be applied in any programming language. JavaScript supports immutability through a special library. Smalltalk could support immutability by convention or discipline. That pure FP languages such as Haskell normally prevent mutability by not allowing assignment is neither here nor there. All FP languages must allow mutability in some manner or in some context if you want to get any real work done.
Richard Kenneth Eng

There is a large difference in practice between what a language makes hard to do vs hard _not_ to do. Which is why Bob Martin also says that “functional programs are much safer in multiprocessing and multiprocessor environments.” I find that in many FP languages, immutability doesn’t add any overhead to designing my programs as the functions are high level and declarative. So if their is little lost and much gained, can we not call that a net benefit?

A single golf clap? Or a long standing ovation?

By clapping more or less, you can signal to us which stories really stand out.