Most common to me buffer reuse. I'll read a line of a file into a buffer, 
operate on it, then read the next line into the same buffer. If references to 
the buffer may escape, it's obviously unsafe to cast to immutable. 

Sent from my iPhone

On Dec 28, 2011, at 9:11 AM, Walter Bright <[email protected]> wrote:

> On 12/28/2011 4:06 AM, Peter Alexander wrote:
>> I rarely *ever* need an immutable string. What I usually need is 
>> const(char)[].
>> I'd say 99%+ of the time I need only a const string.
> 
> I have a very different experience with strings. I can't even remember a case 
> where I wanted to modify an existing string (this includes all my C and C++ 
> usage of strings). It's always assemble a string at one place, and then refer 
> to that string ever after (and never modify it).
> 
> What immutable strings make possible is treating strings as if they were 
> value types. Nearly every language I know of treats them as immutable except 
> for C and C++.

Reply via email to