Why does Objective C provide both class NSString and subclass NSMutableString rather than just provide NSMutableString? Isn\'t a NSString equivalent to \"const NSMutableStr
I think the usage of an immutable string is a hint for the compiler which can perform optimizations by knowning it won't change.