C++ Logo

sg16

Advanced search

Namespaces

From: Lyberta <lyberta_at_[hidden]>
Date: Sat, 30 Mar 2019 21:11:00 +0000
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


Received on 2019-03-30 22:12:05