[Cuis-dev] UnicodeString coercion

Phil B pbpublist at gmail.com
Wed Jul 1 08:59:52 PDT 2026


Sorry... forgot to reply all.

To put it more succinctly: rather than assume that anywhere you have a
string/stream it's just as good to substitute a Unicode string/stream, it
really seems like it should be opt-in via #asUnicodeString or
#asUniFileStream for coercion or explicit at instance creation time.  That
makes the contract clear and you don't get something other than what you
want/need.

On Wed, Jul 1, 2026 at 11:52 AM Phil B <pbpublist at gmail.com> wrote:

> I hear what you're saying but that assumption breaks a lot of code.  They
> are *similar* to String, but they are actually very different creatures and
> only superficially protocol compatible. (i.e. you often cannot substitute
> a UnicodeString for a String without severely breaking things... even when
> 'String' is nowhere in the source code that breaks)  I have had to ugly up
> a lot of code to get out of the implicit opt-in to Unicode that Cuis has
> done on this front.[1] Please don't rename String... that would make things
> 100x worse.
>
> [1] i.e. 'where the hell did that UnicodeString come from?' when I didn't
> want it... usually when dealing with a DNU error dialog.  Even when I
> resolve the DNU, the breakage often continues on down the chain because you
> can't just substitute UnicodeString for String when you're dealing with
> FFI, web APIs, file formats etc.
>
> On Wed, Jul 1, 2026 at 11:16 AM Juan Vuletich <juan at cuis.st> wrote:
>
>> Hi Phil,
>>
>> On 2026-07-01 10:27 AM, Phil B via Cuis-dev wrote:
>> > Is there a reason UnicodeString asString returns self rather than a
>> > String?
>> >
>> Yes. UnicodeStrings are conceptually Strings. Perhaps we'd rename String
>> as ByteString, and CharacterSequence as String.
>>
>> In any case, just use #asByteString that does what you want.
>>
>> Cheers,
>>
>> --
>> Juan Vuletich
>> www.cuis.st
>> github.com/jvuletich
>> researchgate.net/profile/Juan-Vuletich
>> independent.academia.edu/JuanVuletich
>> patents.justia.com/inventor/juan-manuel-vuletich
>>
>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.cuis.st/mailman/archives/cuis-dev/attachments/20260701/92ec3c4b/attachment.htm>


More information about the Cuis-dev mailing list