On Thursday, 28 November 2013 at 09:02:12 UTC, Walter Bright
wrote:
Sadly,

I think it's great. It means by default, your strings will always
be handled correctly. I think there's quite a few algorithms that
were written without ever taking strings into account, but still
happen to work with them.

std.array is determined to decode (i.e. convert to dchar[]) all your strings when they are used as ranges.
This means that all algorithms on
strings will be crippled as far as performance goes.

Quite a few algorithms in array/algorithm/string *don't* decode
the string when they don't need to actually.

Very, very few operations on strings need decoding. The decoding should have gone into a separate layer.

Which operations are you thinking of in std.array that decode
when they shouldn't?

Reply via email to