Russel Winder wrote:
On Fri, 2010-08-20 at 02:22 +0000, dsimcha wrote:
[ . . . ]
1.  How did it get to be this way?  Why did it seem like a good idea at the
time to only support UTF-8 and only immutable strings?

But isn't the thinking these days that immutable strings are a good
thing?

Immutability is generally a good thing for all parallel, and indeed
concurrent, computations.

Hey Russell,

The idea is for the algorithms to impose as little on their inputs. If you're searching a character in a string you wouldn't care whether the string is mutable or not - the algorithm is the same. Currently many algorithm in std.string require (a) immutable and (b) UTF-8 strings as inputs. Either or both limitations should be relaxed as much as possible.

char[] thisIsMutable = new char[100];
char[] thisIsMutableW = new wchar[100];
...
assert(indexOf(thisIsMutable, "abc") != -1); // should work
assert(indexOf(thisIsMutableW, "abc") != -1); // should work
assert(indexOf(thisIsMutableW, "abc"w) != -1); // even this should work


Andrei

Reply via email to