Pragmatically, I seem to have noted that in languages with low level strings, 
people invariably come up with librairies that provide higher-level strings. 
C/C++ provided low-level strings only initially, then a not-so-powerful 
std::string; and we saw QString, wxString, irr::string, BetterString, countless 
others...

Java, on the other end, provided a powerful high-level String object from the 
start; and to my knowledge it is used consistently in all Java programs with no 
other string classes being made.

I do acknowlegde that D arrays are much better than C/C++ arrays. Still, my 
prediction is that if D chooses to stick to C-style function calls, and does 
not provide a standard high-level String object, then a myriad of string 
objects will start popping around. Because lots of people like OOP and don't 
like C-style calls.

Just my 2c :) I mean be wrong

-- Auria

Walter Bright Wrote:

> Strings in D are deliberately meant to be arrays, not special things. Other 
> languages make them special because they have insufficiently powerful arrays.
> 
> As for indexing by code point, I also believe this is a mistake. It is 
> proposed 
> often, but overlooks:
> 
> 1. most string operations, such as copying and searching, even regular 
> expressions, work just fine using regular indices.
> 
> 2. doing the operations in (1) using code points and having to continually 
> decode the strings would result in disastrously slow code.
> 
> 3. the user can always layer a code point interface over the strings, but 
> going 
> the other way is not so practical.

Reply via email to