220 33352 <4DFE708E-6589-4A08-8A65-766B6CC4C19E@hsr.ch> article
Path: news.gmane.org!.POSTED!not-for-mail
From: Peter Sommerlad <peter.sommerlad@hsr.ch>
Newsgroups: gmane.comp.lang.c++.isocpp.proposals
Subject: Re: Trait for arithmetic types similar to
 std::chrono::treat_as_floating_point for the use in other parts of the library
Date: Wed, 26 Jul 2017 20:49:00 +0200
Lines: 206
Approved: news@gmane.org
Message-ID: <4DFE708E-6589-4A08-8A65-766B6CC4C19E@hsr.ch>
References: <CAM76qmvf09dHUx6-9sui_XAA6amObKUjcp_DrEsHXRAJ1qu5pA@mail.gmail.com> <CABPJVnTsGJmiV3mePzgum4j_BLdcReBDXGjp4kCXCRnFDU8+bA@mail.gmail.com>
Reply-To: std-proposals@isocpp.org
NNTP-Posting-Host: blaine.gmane.org
Mime-Version: 1.0 (1.0)
Content-Type: multipart/alternative;
	boundary="Apple-Mail-A9F30C1C-52A9-4A51-B2AE-EAA33E06DA54"
Content-Transfer-Encoding: 7bit
X-Trace: blaine.gmane.org 1501094950 27499 195.159.176.226 (26 Jul 2017 18:49:10 GMT)
X-Complaints-To: usenet@blaine.gmane.org
NNTP-Posting-Date: Wed, 26 Jul 2017 18:49:10 +0000 (UTC)
Cc: Peter Sommerlad <peter.sommerlad@hsr.ch>
To: <std-proposals@isocpp.org>
Original-X-From: std-proposals+bncBD3OHQEN4AJBBIWI4PFQKGQEQQK2UXA@isocpp.org Wed Jul 26 20:49:05 2017
Return-path: <std-proposals+bncBD3OHQEN4AJBBIWI4PFQKGQEQQK2UXA@isocpp.org>
Envelope-to: gclcip-std-proposals@m.gmane.org
Original-Received: from mail-lf0-f72.google.com ([209.85.215.72])
	by blaine.gmane.org with esmtp (Exim 4.84_2)
	(envelope-from <std-proposals+bncBD3OHQEN4AJBBIWI4PFQKGQEQQK2UXA@isocpp.org>)
	id 1daRMk-0006jo-DV
	for gclcip-std-proposals@m.gmane.org; Wed, 26 Jul 2017 20:49:02 +0200
Original-Received: by mail-lf0-f72.google.com with SMTP id f26sf41007737lfh.14
        for <gclcip-std-proposals@m.gmane.org>; Wed, 26 Jul 2017 11:49:08 -0700 (PDT)
ARC-Seal: i=2; a=rsa-sha256; t=1501094948; cv=pass;
        d=google.com; s=arc-20160816;
        b=DgRiGDksmP/2eHS1CswGScslXoP3NJkQTwbDwjSTda6bkllz1dRp7pEKhS3UM/1u6W
         Csq9SKfRrY+C9dc3gQ0iL93E9svcfSz/J0qRUdPxUnRHNX+yGOGuaZjVKhawbypA5RJh
         OYg5YuJ9Y0d1qlnX6jZfkWf2+/xrRBLOfNKaJAvG1Usg1vXRGkkxiV8p4ybqD1eNcwEs
         Ne5PaQX0vn/9hXdpFwi7gHUNJRB4ypZxDzvMZ+YaXFci79JmWULG+yn5af8m28NjRsFe
         oYRa4kUBIX+UjT54ie9WjEDF4GKiFU6uysBcydpDqcVZ1WrTZDfWh8IQK9r9sEWnAzYF
         kcMw==
ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816;
        h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post
         :list-id:mailing-list:precedence:reply-to:to:references:message-id
         :content-transfer-encoding:cc:date:in-reply-to:from:subject
         :mime-version:arc-authentication-results:arc-message-signature
         :dkim-signature:arc-authentication-results;
        bh=Jo88rpbXCsfZcqLlyfoQdgRn8BRpR5UrwizPdXAPIS4=;
        b=PfNwbXgbgLVXma8S6d4XTMFbWhN5IBshzViKzBhvt1jIGhYYTWBXRqenHoL9eYDI1G
         KFflK6m2cylNJE1WXC8xluCyHbi/hMitzxcZE561BMBWnkAtrkzjSrlvyhCSvIr6h5G1
         HfsUNIk9m7xtauczVk7HW7uGImvQBA2lc2lVYK4eV3KZv+uXiLbM0Gh1EymGLpxNhCDO
         qvVdFGIH24S3L8Bx8MdN3O9ikqN6NPM7/siWshdnO3fPemKlBUOrreT5dtPJhc9Nnl7w
         DbvHdivQswGAy8i5vNWfviDTVxZOjbMMchwfVq9UZp4YQZ7aRZ0fPVAlXZm+CYy18zk7
         AYbQ==
ARC-Authentication-Results: i=2; mx.google.com;
       spf=pass (google.com: domain of peter.sommerlad@hsr.ch designates 2001:620:130:a036::31 as permitted sender) smtp.mailfrom=peter.sommerlad@hsr.ch
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=isocpp-org.20150623.gappssmtp.com; s=20150623;
        h=mime-version:subject:from:in-reply-to:date:cc
         :content-transfer-encoding:message-id:references:to
         :x-original-sender:x-original-authentication-results:reply-to
         :precedence:mailing-list:list-id:list-post:list-help:list-archive
         :list-subscribe:list-unsubscribe;
        bh=Jo88rpbXCsfZcqLlyfoQdgRn8BRpR5UrwizPdXAPIS4=;
        b=k/ToxxreRPlIHsIlthBwkqllGE5zVHjkBTQ/f1TZRjC4yhhvJ6lvB+3/lEzjLMZjxi
         hZygmIa4p9f6gqhFsT0+eQBAPOalONwatSEtEMT89bd5VnYWnkkR664ZU5OVXpniOdQ5
         a0ihqLf461QWqJaVgChhxcu6E2ct3Zy2JdpIxCDrqzx0MIIi7t7Hobf3OOn3VwBMbz+z
         GWEbGer364tsqx/Y6eVZf3vOptaJe7JsWfl7jFyx9gqAmMmUil5TTqsun6gx5SBGvYd1
         20hZrXX7lkMPsHffJrdx7hntL+Y3HDaOzfpERtpE+zMbcW3THkCJ+O6h+34Cg7JrEQ7k
         uIfg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:mime-version:subject:from:in-reply-to:date:cc
         :content-transfer-encoding:message-id:references:to
         :x-original-sender:x-original-authentication-results:reply-to
         :precedence:mailing-list:list-id:x-spam-checked-in-group:list-post
         :list-help:list-archive:list-subscribe:list-unsubscribe;
        bh=Jo88rpbXCsfZcqLlyfoQdgRn8BRpR5UrwizPdXAPIS4=;
        b=qyKcCuGTMUOpgWaaL+YP7H4EWCKNsDw3jNEEqnkPwnmzUihi0PBFkoSZNEW8jBcgju
         Yo8lrLZHLODy31emSRV0gTK9fsuOuGJv0QgeNqhTZdmRyTYT5fFenLF/Kjlij8VT8l5Z
         Xc6o24m7tB6Aff9NobM2S/XfKOMaccIlsqIMPwVRycb3BI1Yq5Aor58IZ+e1eS9EVi8X
         28gW8qM3HFYwzeEEBeJ04dSb7FCscf9X+CX9I0K7pQmSFA6cT5EODjz6IHTJPU3/QOIQ
         kDTTr8f+IUT9hDrZ0tx6AOk2zTZCLPvrjwCssFtbTCSXPvwSZUVzpnMpX57a6e6nCXvh
          
X-Gm-Message-State: AIVw113rILEdyoVhhHyhQIxDP5CazfWln0u+OyIZoLIksI559dpBSJXY
	9di4S4lXs1RZqBFi
X-Received: by 10.25.141.81 with SMTP id p78mr272395lfd.19.1501094948412;
        Wed, 26 Jul 2017 11:49:08 -0700 (PDT)
X-BeenThere: std-proposals@isocpp.org
Original-Received: by 10.28.153.202 with SMTP id b193ls256773wme.22.canary-gmail; Wed,
 26 Jul 2017 11:49:06 -0700 (PDT)
X-Received: by 10.80.134.185 with SMTP id r54mr1517111eda.29.1501094946192;
        Wed, 26 Jul 2017 11:49:06 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; t=1501094946; cv=none;
        d=google.com; s=arc-20160816;
        b=wX3osER1ufiI5/QRHCArK+9S/FaSdsZ8Lz0QbODAKg7lLqZaM8QSGDr9IcV+aI/VYK
         LSgh+zyw6Rk2Pl3211vdJiMPrQlz4qRcGGPO6/4dfpCs6aH4hZdJlUIwHtqvziZwkwwj
         a/1touaNA1uHnEy3UzIVW9+qHzVBqQ1USJ+ntjeSvmC9JZA/KYC2PyGDypBCHk5DxuE4
         c8ma+c4mTNIhBAeoXcyghMVdJXWGS7NlYrNl0zc1BPbGydxwru7eB0J/w2GT7V/++yPv
         nuGDbtgb8Q4a34Djcp5wYx1BoS2WKySOHtBFp0VQ3JA618hIIkP6y2a5cLfA3CLohn8M
         fOVA==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816;
        h=to:references:message-id:content-transfer-encoding:cc:date
         :in-reply-to:from:subject:mime-version:arc-authentication-results;
        bh=eblfvPc/IMDQq49J1w1niejb0Iv3gHSNhN6JSHUxdEE=;
        b=QLV1Vx2i6xNUDmDthUqtm2kUycv0UELL9Imno2mJz1ZVYlBJGKe9JuI8rK4BhIDCKn
         Up+7ILNNxHP2s87oSIz4kVqYcKm+Z0jYbxzu7yPkS1AqfL/6cGsr+hlTFybiyw/QrG1Y
         8vUzDOqm9mNGRXSkZNhRFY6ZCWef+DINde2DJSwHaVNhX4ku4owDpfIT99jn4TxdYKuK
         23FPyQyBuqzsUVFqYb1Jvs0rLFT1aV3fSaPna00EaQITOneFqzUhIZbSii7YyFP7vZKe
         Hr766wjwQ36Ev2ATButH/tfjyaMMpCeTVPQHD0NwRyAEoaWRtw1rEYBqA1JQ5bNcItzv
         Tw+w==
ARC-Authentication-Results: i=1; mx.google.com;
       spf=pass (google.com: domain of peter.sommerlad@hsr.ch designates 2001:620:130:a036::31 as permitted sender) smtp.mailfrom=peter.sommerlad@hsr.ch
Original-Received: from mx1.hsr.ch (mx1.hsr.ch. [2001:620:130:a036::31])
        by mx.google.com with ESMTPS id s23si10066098edc.539.2017.07.26.11.49.06
        for <std-proposals@isocpp.org>
        (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);
        Wed, 26 Jul 2017 11:49:06 -0700 (PDT)
Received-SPF: pass (google.com: domain of peter.sommerlad@hsr.ch designates 2001:620:130:a036::31 as permitted sender) client-ip=2001:620:130:a036::31;
Original-Received: from localhost (localhost [127.0.0.1])
	by mx1.hsr.ch (Postfix) with ESMTP id 5D6E423B61E8
	for <std-proposals@isocpp.org>; Wed, 26 Jul 2017 20:49:05 +0200 (CEST)
Original-Received: from mx1.hsr.ch ([127.0.0.1])
	by localhost (mx1.hsr.ch [127.0.0.1]) (amavisd-new, port 10024)
	with LMTP id E0Y2hW9iBTrK for <std-proposals@isocpp.org>;
	Wed, 26 Jul 2017 20:49:02 +0200 (CEST)
Original-Received: from webmail.hsr.ch (unknown [152.96.21.232])
	(using TLSv1.2 with cipher ECDHE-RSA-AES128-SHA256 (128/128 bits))
	(No client certificate requested)
	by mx1.hsr.ch (Postfix) with ESMTPS id C79D123B61E7
	for <std-proposals@isocpp.org>; Wed, 26 Jul 2017 20:49:02 +0200 (CEST)
Original-Received: from [192.168.1.19] (152.96.21.199) by sidv0232.hsr.ch
 (152.96.21.231) with Microsoft SMTP Server (version=TLS1_2,
 cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.1034.26; Wed, 26
 Jul 2017 20:49:02 +0200
X-Mailer: iPad Mail (14F89)
In-Reply-To: <CABPJVnTsGJmiV3mePzgum4j_BLdcReBDXGjp4kCXCRnFDU8+bA@mail.gmail.com>
X-Originating-IP: [152.96.21.199]
X-ClientProxiedBy: sidv0231.hsr.ch (152.96.21.229) To sidv0232.hsr.ch
 (152.96.21.231)
X-Original-Sender: peter.sommerlad@hsr.ch
X-Original-Authentication-Results: mx.google.com;       spf=pass (google.com:
 domain of peter.sommerlad@hsr.ch designates 2001:620:130:a036::31 as
 permitted sender) smtp.mailfrom=peter.sommerlad@hsr.ch
Precedence: list
Mailing-list: list std-proposals@isocpp.org; contact std-proposals+owners@isocpp.org
List-ID: <std-proposals.isocpp.org>
X-Google-Group-Id: 399137483710
List-Post: <https://groups.google.com/a/isocpp.org/group/std-proposals/post>, <mailto:std-proposals@isocpp.org>
List-Help: <https://support.google.com/a/isocpp.org/bin/topic.py?topic=25838>, <mailto:std-proposals+help@isocpp.org>
List-Archive: <https://groups.google.com/a/isocpp.org/group/std-proposals/>
List-Subscribe: <https://groups.google.com/a/isocpp.org/group/std-proposals/subscribe>,
 <mailto:std-proposals+subscribe@isocpp.org>
List-Unsubscribe: <mailto:googlegroups-manage+399137483710+unsubscribe@googlegroups.com>,
 <https://groups.google.com/a/isocpp.org/group/std-proposals/subscribe>
Xref: news.gmane.org gmane.comp.lang.c++.isocpp.proposals:33352
Archived-At: <http://permalink.gmane.org/gmane.comp.lang.c++.isocpp.proposals/33352>

--Apple-Mail-A9F30C1C-52A9-4A51-B2AE-EAA33E06DA54
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

I believe that discussion must also be done considering a more complete uni=
ts library, beyond just duration. But the problems to address are essential=
ly the same, so what works for duration might be a good starting point for =
generalization.

Thank you both for bringing this up.

Regards
Peter

Sent from Peter Sommerlad's iPad
+41 79 432 23 32

> On 26 Jul 2017, at 20:03, John McFarlane <john@mcfarlane.name> wrote:
>=20
>> On Wed, Jul 26, 2017 at 9:14 AM Manuel Bergler <berglerma@gmail.com> wro=
te:
>> Hi everyone,
> Hi Manual=20
>=20
>> However, allowing only float, double or long double is not a restriction=
 of the implementation (at least in the libstdc++ one I tested). As a matte=
r of fact, just specializing std::is_floating_point for std::chrono::durati=
on - even though it is not allowed and thus undefined behaviour - makes=20
>>   =20
>>     ````
>>     using milliseconds_d =3D std::chrono::duration<double, std::milli>;
>>     std::normal_distribution<milliseconds_d> distribution{milliseconds_d=
{0}, milliseconds_d{1}};
>>     ````
>>=20
>> compile and the distribution yields the exact same values as it does for=
 pure doubles.
>=20
> I'm sure that you're aware that it's a very big leap from not observing a=
ny UB in one implementation to writing code that is safe.  But you might be=
 surprised by what implementors do with the assumptions you are breaking!
>=20
>> So I was wondering where else in the library these restrictions are kind=
 of arbitrary and if it does make sense to use something like std::chrono::=
treat_as_floating point in other places of the library.
>=20
> I would not say that they are arbitrary.  It's easy to start with tight r=
estrictions that allow basic functionality and relax them in future revisio=
ns.  But it's much harder to shut the stable door once the horse has bolted=
..
> =20
>> But before searching in all of the STL for components that are unnecessa=
rily restrictive I first wanted to ask for feedback.
>>=20
>> In light of the work on the Numerics TS as outlined in [P0101r0], which =
will introduce more arithmetic types to the standard library I think it def=
initely makes sense to make all kinds of STL components aware of user-defin=
ed arithmetic types, but what is your opinion?
>=20
> You might be interested in P0437.  It proposes moving the functionality o=
f `numeric_limits` into individual traits -- like those in <type_traits> --=
 but continuing to allow specialization for user-defined types.  The specif=
ic case of a test for floating-point is deferred but this seems to be the c=
urrent approach to achieve what you're after.
>=20
> There are some tough problems to address here though.  Firstly, while `du=
ration<float>` or the types from P0101 can behave like floating-point types=
, that does not mean that either of them are, themselves, floating-point ty=
pes.  They are essentially classes.  So some other property may be what we'=
re really after here: perhaps the ability to convert between floating-point=
 types or the ability to approximate real numbers. =20
>=20
> It's difficult to say what these properties are until more types exhibit =
them but I hope that there is a way forward here that allows seamless inter=
operability between all numeric types where that makes sense.
> =20
> John
> --=20
> You received this message because you are subscribed to the Google Groups=
 "ISO C++ Standard - Future Proposals" group.
> To unsubscribe from this group and stop receiving emails from it, send an=
 email to std-proposals+unsubscribe@isocpp.org.
> To post to this group, send email to std-proposals@isocpp.org.
> To view this discussion on the web visit https://groups.google.com/a/isoc=
pp.org/d/msgid/std-proposals/CABPJVnTsGJmiV3mePzgum4j_BLdcReBDXGjp4kCXCRnFD=
U8%2BbA%40mail.gmail.com.

--=20
You received this message because you are subscribed to the Google Groups "=
ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
To view this discussion on the web visit https://groups.google.com/a/isocpp=
..org/d/msgid/std-proposals/4DFE708E-6589-4A08-8A65-766B6CC4C19E%40hsr.ch.

--Apple-Mail-A9F30C1C-52A9-4A51-B2AE-EAA33E06DA54
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<html><head><meta http-equiv=3D"content-type" content=3D"text/html; charset=
=3Dutf-8"></head><body dir=3D"auto"><div>I believe that discussion must als=
o be done considering a more complete units library, beyond just duration. =
But the problems to address are essentially the same, so what works for dur=
ation might be a good starting point for generalization.</div><div id=3D"Ap=
pleMailSignature"><br></div><div id=3D"AppleMailSignature">Thank you both f=
or bringing this up.</div><div id=3D"AppleMailSignature"><br></div><div id=
=3D"AppleMailSignature">Regards</div><div id=3D"AppleMailSignature">Peter<b=
r><br>Sent from Peter Sommerlad's<span class=3D"Apple-style-span" style=3D"=
-webkit-tap-highlight-color: rgba(26, 26, 26, 0.296875); -webkit-compositio=
n-fill-color: rgba(175, 192, 227, 0.230469); -webkit-composition-frame-colo=
r: rgba(77, 128, 180, 0.230469); ">&nbsp;iPad</span><div><span class=3D"App=
le-style-span" style=3D"-webkit-tap-highlight-color: rgba(26, 26, 26, 0.296=
875); -webkit-composition-fill-color: rgba(175, 192, 227, 0.230469); -webki=
t-composition-frame-color: rgba(77, 128, 180, 0.230469); ">+41 79 432 23 32=
</span></div></div><div><br>On 26 Jul 2017, at 20:03, John McFarlane &lt;<a=
 href=3D"mailto:john@mcfarlane.name">john@mcfarlane.name</a>&gt; wrote:<br>=
<br></div><blockquote type=3D"cite"><div><meta http-equiv=3D"Content-Type" =
content=3D"text/html; charset=3Dutf-8"><div dir=3D"ltr"><div class=3D"gmail=
_quote"><div dir=3D"ltr">On Wed, Jul 26, 2017 at 9:14 AM Manuel Bergler &lt=
;<a href=3D"mailto:berglerma@gmail.com">berglerma@gmail.com</a>&gt; wrote:<=
br></div><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;borde=
r-left:1px #ccc solid;padding-left:1ex"><div dir=3D"ltr">Hi everyone,</div>=
</blockquote><div>Hi Manual <br><br></div><blockquote class=3D"gmail_quote"=
 style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><d=
iv dir=3D"ltr">However, allowing only float, double or long double is not a=
 restriction of the implementation (at least in the libstdc++ one I tested)=
.. As a matter of fact, just specializing std::is_floating_point for std::ch=
rono::duration - even though it is not allowed and thus undefined behaviour=
 - makes&nbsp;<div>&nbsp; &nbsp;</div><div>&nbsp; &nbsp; ````<br>&nbsp; &nb=
sp; using milliseconds_d =3D std::chrono::duration&lt;double, std::milli&gt=
;;</div><div>&nbsp; &nbsp; std::normal_distribution&lt;milliseconds_d&gt; d=
istribution{milliseconds_d{0}, milliseconds_d{1}};</div><div>&nbsp; &nbsp; =
````</div><div><br></div><div>compile and the distribution yields the exact=
 same values as it does for pure doubles.</div></div></blockquote><div><br>=
</div><div>I'm sure that you're aware that it's a very big leap from not ob=
serving any UB in one implementation to writing code that is safe.&nbsp; Bu=
t you might be surprised by what implementors do with the assumptions you a=
re breaking!<br><br></div><blockquote class=3D"gmail_quote" style=3D"margin=
:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir=3D"ltr"><=
div>So I was wondering where else in the library these restrictions are kin=
d of arbitrary and if it does make sense to use something like std::chrono:=
:treat_as_floating point in other places of the library.</div></div></block=
quote><div><br>I would not say that they are arbitrary.&nbsp; It's easy to =
start with tight restrictions that allow basic functionality and relax them=
 in future revisions.&nbsp; But it's much harder to shut the stable door on=
ce the horse has bolted.<br></div><div>&nbsp;</div><blockquote class=3D"gma=
il_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-lef=
t:1ex"><div dir=3D"ltr"><div>But before searching in all of the STL for com=
ponents that are unnecessarily restrictive I first wanted to ask for feedba=
ck.</div><div><br></div><div>In light of the work on the Numerics TS as out=
lined in [P0101r0], which will introduce more arithmetic types to the stand=
ard library I think it definitely makes sense to make all kinds of STL comp=
onents aware of user-defined arithmetic types, but what is your opinion?</d=
iv></div></blockquote><div><br></div><div>You might be interested in P0437.=
&nbsp; It proposes moving the functionality of `numeric_limits` into indivi=
dual traits -- like those in &lt;type_traits&gt; -- but continuing to allow=
 specialization for user-defined types.&nbsp; The specific case of a test f=
or floating-point is deferred but this seems to be the current approach to =
achieve what you're after.<br><br></div><div>There are some tough problems =
to address here though.&nbsp; Firstly, while `duration&lt;float&gt;` or the=
 types from P0101 can behave like floating-point types, that does not mean =
that either of them are, themselves, floating-point types.&nbsp; They are e=
ssentially classes.&nbsp; So some other property may be what we're really a=
fter here: perhaps the ability to convert between floating-point types or t=
he ability to approximate real numbers.&nbsp; <br><br>It's difficult to say=
 what these properties are until more types exhibit them but I hope that th=
ere is a way forward here that allows seamless interoperability between all=
 numeric types where that makes sense.<br></div><div>&nbsp;<br></div><div>J=
ohn</div></div></div>

<p></p>

-- <br>
You received this message because you are subscribed to the Google Groups "=
ISO C++ Standard - Future Proposals" group.<br>
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:std-proposals+unsubscribe@isocpp.org">std-proposa=
ls+unsubscribe@isocpp.org</a>.<br>
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org">std-proposals@isocpp.org</a>.<br>
To view this discussion on the web visit <a href=3D"https://groups.google.c=
om/a/isocpp.org/d/msgid/std-proposals/CABPJVnTsGJmiV3mePzgum4j_BLdcReBDXGjp=
4kCXCRnFDU8%2BbA%40mail.gmail.com?utm_medium=3Demail&amp;utm_source=3Dfoote=
r">https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/CABPJVnTsGJ=
miV3mePzgum4j_BLdcReBDXGjp4kCXCRnFDU8%2BbA%40mail.gmail.com</a>.<br>
</div></blockquote></body></html>

<p></p>

-- <br />
You received this message because you are subscribed to the Google Groups &=
quot;ISO C++ Standard - Future Proposals&quot; group.<br />
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:std-proposals+unsubscribe@isocpp.org">std-proposa=
ls+unsubscribe@isocpp.org</a>.<br />
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org">std-proposals@isocpp.org</a>.<br />
To view this discussion on the web visit <a href=3D"https://groups.google.c=
om/a/isocpp.org/d/msgid/std-proposals/4DFE708E-6589-4A08-8A65-766B6CC4C19E%=
40hsr.ch?utm_medium=3Demail&utm_source=3Dfooter">https://groups.google.com/=
a/isocpp.org/d/msgid/std-proposals/4DFE708E-6589-4A08-8A65-766B6CC4C19E%40h=
sr.ch</a>.<br />

--Apple-Mail-A9F30C1C-52A9-4A51-B2AE-EAA33E06DA54--

.
