<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <div class="moz-cite-prefix">What is the motivation for having a
      namespace specific to text at all?  Ranges needed a separate
      namespace in order to provide constrained interfaces that were, in
      most but not all cases, functionally equivalent to the
      non-constrained interfaces.  New declarations were needed in order
      to avoid breaking backward compatibility.  I don't see a similar
      motivation for text as the existing text related names 1) aren't
      great names, and 2) are for interfaces that we explicitly don't
      want to replicate.  I think new interfaces deserve new names.  I
      think it is  also informative that none of the names proposed
      below recycle existing names in 'std'.<br>
    </div>
    <div class="moz-cite-prefix"><br>
    </div>
    <div class="moz-cite-prefix">Tom.<br>
    </div>
    <div class="moz-cite-prefix"><br>
    </div>
    <div class="moz-cite-prefix">On 3/30/19 5:11 PM, Lyberta wrote:<br>
    </div>
    <blockquote type="cite"
      cite="mid:7bd4df39-226d-13fa-3424-030b001d363f@lyberta.net">
      <pre class="moz-quote-pre" wrap="">Ranges has made a precedent that we can provide better versions of old
functions by putting them into a separate namespace. It is general
consensus that almost all current text related function are obsolete. We
should consider a namespace for new ones.

I think std::text fits this. This namespace would contain functions that
are modern and can properly support Unicode (and other encodings!).

There is also a precedent of my proposal and D1628 having separate
namespace specifically for Unicode. Generally speaking, Unicode is a
subset of text processing so in mathematical sense it would be obvious
to put unicode namespace as std::text::unicode but here I agree that it
is too much typing.

So I propose the following:

std::text for general purpose text algorithms (to be determined as we
haven't even nailed the Unicode yet, but consider std::text::to_upper,
std::text::is_alphanumeric).
std::unicode for Unicode classes and algorithms. Everything in std::text
should be able to work with classes from std::unicode.

Then we can add more encodings under std or maybe right into std::text
if they are too simple.

Theoretical examples:

std::ascii
std::ebcdic
std::shift_jis

</pre>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <pre class="moz-quote-pre" wrap="">_______________________________________________
SG16 Unicode mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Unicode@isocpp.open-std.org">Unicode@isocpp.open-std.org</a>
<a class="moz-txt-link-freetext" href="http://www.open-std.org/mailman/listinfo/unicode">http://www.open-std.org/mailman/listinfo/unicode</a>
</pre>
    </blockquote>
    <p><br>
    </p>
  </body>
</html>