C++ Logo


Advanced search

Re: [wg14/wg21 liaison] adding punctuator tokens

From: Jens Gustedt <jens.gustedt_at_[hidden]>
Date: Fri, 16 Apr 2021 08:55:56 +0200

on Thu, 15 Apr 2021 14:16:20 -0400 you (Steve Downey via Liaison
<liaison_at_[hidden]>) wrote:

> Middle dot (U+00B7) is currently an identifier, and remains so in C++
> with P1947, so it shouldn't be an issue. Proportion (U+2237) is part
> of Mathematical Symbols rather than punctuation, and isn't in the
> identifier list, so isn't going to conflict.
> However, giving alternate spellings for code is inevitably going to
> cause confusion. I don't believe we really need more ways of spelling
> the same thing. Digraphs solve a narrow technical problem, but the
> most common use is creating confusing compiler errors.

Digraphs are clearly meant to help people/platforms in a transition
phase, not as an eternal status quo. In that sense I think the
existing ones worked reasonably well.

For the new ones my long term expectation would be the same. Long term
for C++ probably here means a different thing than for C, because C++
already forces better Unicode support. In C we have platforms that are
still using trigraphs in essential parts of their software
architecture, so this would probably take much longer.

> Typing difficulty aside, I'd also rather see the math symbols remain
> available for use as potential new operators, or as an extension to
> create new infix operations.

My take would be that we should not abuse mathematical notation for
general language concepts. In particular for characters such as `≤` or
`≠` we clearly already have operators that implement the
functionality. So I think we should just use them there. Having `≤`
and `<=` as two separate operators would really be confusing.

Extending that pattern to other mathematical operators that are not
yet covered, why not. It could for example a good idea if people could
have `∂` as an operator or function, recently someone told me they'd
like to have this.

But this is clearly another take for another paper. I think we should
cleanup house first …

> https://isocpp.org/files/papers/P1949R7.html - C++ Identifier Syntax
> using Unicode Standard Annex 31

… and I see that you are doing this for identifiers. Are there plans
to bring that to WG14 or the liaison SG?


:: INRIA Nancy Grand Est ::: Camus ::::::: ICube/ICPS :::
:: ::::::::::::::: office Strasbourg : +33 368854536   ::
:: :::::::::::::::::::::: gsm France : +33 651400183   ::
:: ::::::::::::::: gsm international : +49 15737185122 ::
:: http://icube-icps.unistra.fr/index.php/Jens_Gustedt ::

Received on 2021-04-16 01:56:10