<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <div class="moz-cite-prefix">On 4/10/2025 4:58 PM, Mark E. Shoulson
      via Unicode wrote:<br>
    </div>
    <blockquote type="cite"
      cite="mid:fd7a6bd6-641e-4bcc-aa0c-8a9884ddcb2f@kli.org">Characters
      that look the same and act different really *are* bad news, and
      that bad news should be considered also.  And other objections
      also make sense.  It just feels like there's some reflex
      opposition to any change.</blockquote>
    <p><font face="Candara">Yes, there's some reflex opposition to
        certain changes. Some of that even got codified in stability
        policies. <br>
      </font></p>
    <p><font face="Candara">There are two main reasons for adopting a
        stability policy. One is to make sure that existing sequences of
        code points can't be reanalyzed differently in a later version,
        so that their interpretation/display/whatever stays constant.
        The other reason is to limit change so that version upgrades can
        be more predictable. Including limiting the possibility of new
        values for some property.<br>
      </font></p>
    <p><font face="Candara">"Characters that look the same and act
        differently" break predictability of interpretation. Not because
        implementations can't handle these code points predictably based
        on their behavior, but because users can't predictably enter
        them. For some, changing the surrounding text can change their
        interpretation differently, which is something nobody can
        predict when text is first entered.</font></p>
    <p><font face="Candara">And, if it is not possible to tell whether
        users entered the correct code point (compared to their intent),
        it's not possible to make text behave in a way that users can
        predict. Users can't be sure they entered the correct code
        point, if the behavior is such that it can't be observed at the
        time the text is entered.</font></p>
    <p><font face="Candara">Invisible characters are a specialization of
        the foregoing. Unless they affect the text at the point of text
        entry, they cannot be detected and verified by the user. A "show
        hidden characters" mode can assist, but isn't always available.</font></p>
    <p><font face="Candara">There are some situations where there are
        overriding reasons for either of these types of characters, but
        time and again, they cause unanticipated problems. Experience
        predicts that  "I don't see anything wrong with this solution"
        is almost a guarantee that undiscovered problems exist.  <br>
      </font></p>
    <p><font face="Candara">A./<br>
      </font></p>
  </body>
</html>