<div dir="auto">This is super cool. I’d like to have unicode symbols at some point, not sure if we’ll need WideStrings in UTF-32, or how big will be the impact in memory use if we make all strings wide (not only memory use, but also speed, because we have primitives for String). Anyway we’ll see once we start experimenting. Thank you for doing this!</div><div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sat, 30 Apr 2022 at 8:55 AM Juan Vuletich <<a href="mailto:JuanVuletich@zoho.com">JuanVuletich@zoho.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;padding-left:1ex;border-left-color:rgb(204,204,204)"><u></u>

  
    
    
  
  <div bgcolor="#ffffff" text="#000000">
    Class StringUtf8 is a bytes object (like ByteArray). It implements
    #byteSize, #byteAt:, #byteAt:put:. #at: is rather expensive. It
    doesn't support #at:put:. It has several iteration messages in
    CodePoints. Performance seems OK for reasonably small stuff.<br>
    <br>
    In any case, it is always possible to change the data structure, as
    long as it is polymorphic.<br>
    <br>
    I haven't used it for Smalltalk source code yet, only for stand
    alone editors. Parser would see instances of UnicodeCodePoint, maybe
    mixed with Characters (for code points that fit in a Cuis
    Character).<br>
    <br>
    So far this is experimental, so we can adapt it while we learn the
    details of what we need.</div><div bgcolor="#ffffff" text="#000000"><br>
    <br>
    On 4/29/2022 6:24 PM, Luciano Notarfrancesco via Cuis-dev wrote:
    <blockquote type="cite">
      
      <div>How do you represent strings? You’re avoiding random access
        like #at:? The parser can read them and see unicode characters
        instead of byte characters?</div>
      <div><br>
        <div>
          <div>On Thu, 28 Apr 2022 at 1:35 AM Juan Vuletich via Cuis-dev
            <<a href="mailto:cuis-dev@lists.cuis.st" target="_blank">cuis-dev@lists.cuis.st</a>>
            wrote:<br>
          </div>
          <blockquote>Hi Folks,<br>
            <br>
            I've been working on making Cuis text editors work well with
            UTF-8 <br>
            Unicode contents. It is not ready, but you can see how it
            goes in the <br>
            attach,<br>
            <br>
            Cheers,<br>
            <br>
            -- <br>
            Juan Vuletich<br>
            <a href="http://www.cuis-smalltalk.org" target="_blank">www.cuis-smalltalk.org</a><br>
            <a href="https://github.com/Cuis-Smalltalk/Cuis-Smalltalk-Dev" target="_blank">https://github.com/Cuis-Smalltalk/Cuis-Smalltalk-Dev</a><br>
            <a href="https://github.com/jvuletich" target="_blank">https://github.com/jvuletich</a><br>
            <a href="https://www.linkedin.com/in/juan-vuletich-75611b3" target="_blank">https://www.linkedin.com/in/juan-vuletich-75611b3</a><br>
            <a href="https://independent.academia.edu/JuanVuletich" target="_blank">https://independent.academia.edu/JuanVuletich</a><br>
            <a href="https://www.researchgate.net/profile/Juan-Vuletich" target="_blank">https://www.researchgate.net/profile/Juan-Vuletich</a><br>
            <a href="https://patents.justia.com/inventor/juan-manuel-vuletich" target="_blank">https://patents.justia.com/inventor/juan-manuel-vuletich</a><br>
            <a href="https://twitter.com/JuanVuletich" target="_blank">https://twitter.com/JuanVuletich</a><br>
            <br>
            -- <br>
            Cuis-dev mailing list<br>
            <a href="mailto:Cuis-dev@lists.cuis.st" target="_blank">Cuis-dev@lists.cuis.st</a><br>
            <a href="https://lists.cuis.st/mailman/listinfo/cuis-dev" target="_blank">https://lists.cuis.st/mailman/listinfo/cuis-dev</a><br>
          </blockquote>
        </div>
      </div>
    </blockquote>
    <br>
    <br>
    <pre cols="72" style="font-family:monospace">-- 
Juan Vuletich
<a href="http://www.cuis-smalltalk.org" target="_blank" style="font-family:monospace">www.cuis-smalltalk.org</a>
<a href="https://github.com/Cuis-Smalltalk/Cuis-Smalltalk-Dev" target="_blank" style="font-family:monospace">https://github.com/Cuis-Smalltalk/Cuis-Smalltalk-Dev</a>
<a href="https://github.com/jvuletich" target="_blank" style="font-family:monospace">https://github.com/jvuletich</a>
<a href="https://www.linkedin.com/in/juan-vuletich-75611b3" target="_blank" style="font-family:monospace">https://www.linkedin.com/in/juan-vuletich-75611b3</a>
<a href="https://independent.academia.edu/JuanVuletich" target="_blank" style="font-family:monospace">https://independent.academia.edu/JuanVuletich</a>
<a href="https://www.researchgate.net/profile/Juan-Vuletich" target="_blank" style="font-family:monospace">https://www.researchgate.net/profile/Juan-Vuletich</a>
<a href="https://patents.justia.com/inventor/juan-manuel-vuletich" target="_blank" style="font-family:monospace">https://patents.justia.com/inventor/juan-manuel-vuletich</a>
<a href="https://twitter.com/JuanVuletich" target="_blank" style="font-family:monospace">https://twitter.com/JuanVuletich</a></pre>
  </div>

</blockquote></div></div>