TDPL reaches Thermopylae level
Andrei Alexandrescu
SeeWebsiteForEmail at erdani.org
Tue Oct 27 06:07:06 PDT 2009
Chris Nicholson-Sauls wrote:
> Andrei Alexandrescu wrote:
[snip]
>> Well, I guess. In particular, to me it's not clear what type we should
>> assign to a concatenation between a string and a wstring. With ~=,
>> it's much easier...
>>
>
> My intuition would be to expect the same as adding an int to a byte: you
> get an int. Concatenating a string and a wstring should yield a wstring;
> ie, encode to the wider of the two types.
>
> -- Chris Nicholson-Sauls
Yah, I agree. The problem is, there's a big difference too: all
encodings are able to represent the same information, unlike numeric
widths where there's a clear inclusion relationship. It could even be
argued that in pure theory UTF-16 is the least general of the three (I
dislike UTF-16 from an engineering standpoint; unlike UTF-8 which I
think is brilliant, I find UTF-16 is forced and uninspired - the typical
outcome of a committee.)
My current thought is to ascribe lhs ~ rhs the same type as lhs (thereby
making ~ consistent with ~= by making lhs ~= rhs same as lhs = lhs ~
rhs) in case lhs is a string type. If lhs is a character type, the
result type is obviously the same as rhs.
Andrei
More information about the Digitalmars-d
mailing list