C++ Logo

SG16

Advanced search

Subject: Re: [SG16-Unicode] Do we really need basic_text_view?
From: Lyberta (lyberta_at_[hidden])
Date: 2018-08-03 21:41:00


Tom Honermann:
> Please start a new email thread when switching subjects; replying with a
> new subject breaks thread presentation.

Ah, I didn't know e-mail clients track replies silently.

> I think the type aliases are useful for non-deduced contexts.  For
> example, when declaring function parameters.

Right, then we need some good names. I think we should break the
convention established by basic_string. I suggest these:

ecs_text_view, wecs_text_view, utf8_text_view, utf16_text_view,
utf32_text_view. That is assuming the paper that establishes UTF-16 and
UTF-32 as encoding for char16/32_t literals is accepted.

> I don't think it is feasible to avoid the execution character encoding
> given that it is the encoding used for I/O.  Eventually, we may be able
> to add I/O interfaces that implicitly transcode at program boundaries,
> but we don't have that yet.  I think beginners should be able to write
> hello world without having to (explicitly) deal with transcoding.  For
> many applications, the execution character encoding is the right
> encoding to target.

I think we should carefully consider what a modern I/O library should
look like and then design for it. I think I/O should be in terms of
std::byte. I hope integers will be 2s complement soon so serialization
of integers won't be a problem. Since code units are just integers, we
should just work on top of that.


SG16 list run by herb.sutter at gmail.com