On Saturday, 6 December 2014 at 16:32:30 UTC, H. S. Teoh via Digitalmars-d wrote:
On Sat, Dec 06, 2014 at 05:10:09PM +0100, Joseph Rushton Wakeling via Digitalmars-d wrote:
On 05/12/14 23:03, deadalnix via Digitalmars-d wrote:
>http://www.reddit.com/r/programming/comments/2ocmvb/stdstring_is_responsible_for_almost_half_of_all/
>
>Looks like someone need immutable(char)[] .

Someone asked me the other day, and I realized I didn't have a ready
answer as I'd never particularly considered it: why is it
important/beneficial that the string type be immutable(char)[] ?

Immutable, because then you can freely use slices as substrings without worrying that the substring you hand to function X might get modified by unrelated function Y while function X is not quite done with processing
it yet.

At the same time, immutable means that if you do need to do any string manipulation, you need to copy the string first. I think whether immutable means more or less allocations than mutable/const is actually more dependent on application design than anything, and some applications can't afford the copying that using immutable requires.

Reply via email to