I'll point out the obvious since noone else has yet: C# and .NET have immutable strings because Java has them. I suspect Java got the idea from Lisp.