220 38675 <6c44093f-c431-4f80-8688-f6d978a1b080@isocpp.org> article
Path: news.gmane.org!.POSTED!not-for-mail
From: m.cencora@gmail.com
Newsgroups: gmane.comp.lang.c++.isocpp.proposals
Subject: Re: Three way comparison of arrays
Date: Fri, 15 Jun 2018 12:14:14 -0700 (PDT)
Lines: 112
Approved: news@gmane.org
Message-ID: <6c44093f-c431-4f80-8688-f6d978a1b080@isocpp.org>
References: <d50deead-c460-414b-b356-a398772b8f69@isocpp.org>
 <9c6a84e4-66a2-4a25-8372-c7a6c7b8de25@isocpp.org>
 <60dffd75-ebc3-4e4c-8666-f304be8f6136@isocpp.org>
 <75095771-64a6-434c-b9d0-a9d4b1726ce5@isocpp.org>
Reply-To: std-proposals@isocpp.org
NNTP-Posting-Host: blaine.gmane.org
Mime-Version: 1.0
Content-Type: multipart/mixed; 
	boundary="----=_Part_8468_446422807.1529090054260"
X-Trace: blaine.gmane.org 1529089929 7234 195.159.176.226 (15 Jun 2018 19:12:09 GMT)
X-Complaints-To: usenet@blaine.gmane.org
NNTP-Posting-Date: Fri, 15 Jun 2018 19:12:09 +0000 (UTC)
Cc: m.cencora@gmail.com
To: ISO C++ Standard - Future Proposals <std-proposals@isocpp.org>
Original-X-From: std-proposals+bncBD7YFUMJRYMBBB5ASDMQKGQEJ3B3YBQ@isocpp.org Fri Jun 15 21:12:05 2018
Return-path: <std-proposals+bncBD7YFUMJRYMBBB5ASDMQKGQEJ3B3YBQ@isocpp.org>
Envelope-to: gclcip-std-proposals@m.gmane.org
Original-Received: from mail-yb0-f197.google.com ([209.85.213.197])
	by blaine.gmane.org with esmtp (Exim 4.84_2)
	(envelope-from <std-proposals+bncBD7YFUMJRYMBBB5ASDMQKGQEJ3B3YBQ@isocpp.org>)
	id 1fTu8i-0001n8-Sp
	for gclcip-std-proposals@m.gmane.org; Fri, 15 Jun 2018 21:12:05 +0200
Original-Received: by mail-yb0-f197.google.com with SMTP id e16-v6sf7258037ybq.7
        for <gclcip-std-proposals@m.gmane.org>; Fri, 15 Jun 2018 12:14:16 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=isocpp-org.20150623.gappssmtp.com; s=20150623;
        h=date:from:to:cc:message-id:in-reply-to:references:subject
         :mime-version:x-original-sender:reply-to:precedence:mailing-list
         :list-id:list-post:list-help:list-archive:list-subscribe
         :list-unsubscribe;
        bh=Hx+6wkW7qgDfXQuZGgf7DwbGo+mdmBdzsjxC0V5dtyA=;
        b=iSZOc+PILdNzr/IybEvBDsdtMuWbMgOFDs2jil7vvmQVeQ9OInZ07iYbm3FWvdbgQ8
         /Ti/C9UgdHyCMQ8FeKkzUtcACfOTssAzs9nBHVcu2Aam7aVj7PaSgvZWwjONmAqLzip3
         efYBkgMoeLJZm5LoEpaUHySxOknKbdhiG999thTAF8OBRt5nzwpdbSWinE+r/uiiMI7g
         HBjMCHFPh7pmCp6x+KpgfkZ6gUsztkgMJYg5hTNQdbCCsIoe8mDdjLQh9LAkcMEwzIRo
         3b6QPewTmxw87TjQvORjy5gN/s7zS/l3kB+C7VHWIOhKUo28YXMPnrWuA9OIpxYaaDN0
         x5rw==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=date:from:to:cc:message-id:in-reply-to:references:subject
         :mime-version:x-original-sender:reply-to:precedence:mailing-list
         :list-id:list-post:list-help:list-archive:list-subscribe
         :list-unsubscribe;
        bh=Hx+6wkW7qgDfXQuZGgf7DwbGo+mdmBdzsjxC0V5dtyA=;
        b=hSTvi3D5MGly41E/wCMH1VgyP2xtJQm/NOG/aUNTWEyPGQj4VUOtJn93Hq853To3xD
         axADWfaWXHY3auxR62zOqgeqQWiqUn7z/EYcZp3FaVOJw2gBOVLikSxm7Vzn44UdzhIq
         dki23ZCJG5MZLFYT0IBRl05lxzs/crOuB5DCTBP3ys7xwobGNBFDQOww1+cscvzeDXWy
         HFrtTJFaZITQ5HbsKcQQy9lkS74wwAIDn0/7m8zq/Xyjo8PenrzG1qgFzU3yBWRmdOOI
         4+uOTjJtKrZzWvnN35MlDn2y8/wDjBmDZsqAlNrfsSVRP26RlG79hc1St9f2Ec388ggK
         QR1Q==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=1e100.net; s=20161025;
        h=x-gm-message-state:date:from:to:cc:message-id:in-reply-to
         :references:subject:mime-version:x-original-sender:reply-to
         :precedence:mailing-list:list-id:x-spam-checked-in-group:list-post
         :list-help:list-archive:list-subscribe:list-unsubscribe;
        bh=Hx+6wkW7qgDfXQuZGgf7DwbGo+mdmBdzsjxC0V5dtyA=;
        b=o6KvuAtmZqHZtuu1prToYDniwJ0sc9kpaAFgFfEGAKJCcCY2buXv6HIStRBzkKH2wr
         6zn73bGGD9NFE6rWP84uQyy4Kg3wnzNos6uPsa4QDviJ4fTTEqzoSwhymao+yCKGMAbU
         pctPCVKqlE8ed9MhjZHtA/nEe+oN97cLfX+QofF/2a/Eb1fzkuxuMIctCNxHSIRLvY2j
         ycOlZI0TxOfRENhXe63PyLdlTfPVytnpTfp0PYBse2rCx+FkrwR1R3ueuOa9Hiusc0+z
         SUAbuUyoHCWy3LVz7GkoLZVIiJPMO9XPf3szVBDKkO6r9zQyOCobO86V8oCHdAm3qHAt
         xUwg==
X-Gm-Message-State: APt69E0VCZW9dZ14x8m3bKYZ+f1tYAvd0e1adtzA+XuOwKDHj3dLhuZt
	bV3XEGwF7LhL6kctcrHZU09gDw==
X-Google-Smtp-Source: ADUXVKKMQCa/1+2RGkcMs8EV7o8D/fZ7ngAGFuu/K42tJ+E+foVs6uqQN8sNAuM7aDsYaqqL4vC5hw==
X-Received: by 2002:a81:490f:: with SMTP id w15-v6mr819410ywa.226.1529090055941;
        Fri, 15 Jun 2018 12:14:15 -0700 (PDT)
X-BeenThere: std-proposals@isocpp.org
Original-Received: by 2002:a81:c908:: with SMTP id o8-v6ls1660235ywi.23.gmail; Fri, 15
 Jun 2018 12:14:15 -0700 (PDT)
X-Received: by 2002:a0d:cb58:: with SMTP id n85-v6mr123377ywd.5.1529090054850;
        Fri, 15 Jun 2018 12:14:14 -0700 (PDT)
In-Reply-To: <75095771-64a6-434c-b9d0-a9d4b1726ce5@isocpp.org>
X-Original-Sender: m.cencora@gmail.com
Precedence: list
Mailing-list: list std-proposals@isocpp.org; contact std-proposals+owners@isocpp.org
List-ID: <std-proposals.isocpp.org>
X-Spam-Checked-In-Group: 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:38675
Archived-At: <http://permalink.gmane.org/gmane.comp.lang.c++.isocpp.proposals/38675>

------=_Part_8468_446422807.1529090054260
Content-Type: multipart/alternative; 
	boundary="----=_Part_8469_1813322198.1529090054260"

------=_Part_8469_1813322198.1529090054260
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

That argument certainly sounds saner to me. But still we could have this=20
inconsistency only temporary until we switch two-way array comparison to=20
new behavior.
As for ditching builtin arrays - that's way more improbable scenario.

W dniu pi=C4=85tek, 15 czerwca 2018 21:03:35 UTC+2 u=C5=BCytkownik Nicol Bo=
las=20
napisa=C5=82:
>
> On Friday, June 15, 2018 at 2:45:33 PM UTC-4, m.ce...@gmail.com wrote:
>>
>> This is a weak argument. We sacrifice the consistency of the operator<=
=3D>=20
>> (works for all types) for doubtful consistency of copy and compare (of a=
=20
>> single type). We should be fixing language corner cases so it does what=
=20
>> programmer intents.
>> So I'd rather have operator<=3D> for arrays in all cases, and fix array=
=20
>> copying as well.
>>
>
> Well, here's the thing: most people will not be using `<=3D>` directly.=
=20
> They're going to use the fruits of `<=3D>`: the implicit generation of th=
e=20
> other 2/6 operators in both directions.
>
> So you would need a special rule for `<=3D>` when applied to arrays sayin=
g=20
> that they *don't* generate the other 2/6 operations for them. That would=
=20
> be highly inconsistent.
>
> If comparison with those operators isn't going to work for language=20
> arrays, why should it work for `<=3D>`? At least with it the way it is at=
=20
> present, we can later (after removing the old behavior) change the behavi=
or=20
> to work the way we want. Or we can just ditch language arrays altogether.
>

--=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/6c44093f-c431-4f80-8688-f6d978a1b080%40isocpp.or=
g.

------=_Part_8469_1813322198.1529090054260
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div>That argument certainly sounds saner to me. But still=
 we could have this inconsistency only temporary until we switch two-way ar=
ray comparison to new behavior.</div><div>As for ditching builtin arrays - =
that&#39;s way more improbable scenario.<br></div><br>W dniu pi=C4=85tek, 1=
5 czerwca 2018 21:03:35 UTC+2 u=C5=BCytkownik Nicol Bolas napisa=C5=82:<blo=
ckquote class=3D"gmail_quote" style=3D"margin: 0;margin-left: 0.8ex;border-=
left: 1px #ccc solid;padding-left: 1ex;"><div dir=3D"ltr">On Friday, June 1=
5, 2018 at 2:45:33 PM UTC-4, <a>m.ce...@gmail.com</a> wrote:<blockquote cla=
ss=3D"gmail_quote" style=3D"margin:0;margin-left:0.8ex;border-left:1px #ccc=
 solid;padding-left:1ex"><div dir=3D"ltr"><div>This is a weak argument. We =
sacrifice the consistency of the operator&lt;=3D&gt; (works for all types) =
for doubtful consistency of copy and compare (of a single type). We should =
be fixing language corner cases so it does what programmer intents.</div><d=
iv>So I&#39;d rather have operator&lt;=3D&gt; for arrays in all cases, and =
fix array copying as well.<br></div></div></blockquote><div><br></div><div>=
Well, here&#39;s the thing: most people will not be using `&lt;=3D&gt;` dir=
ectly. They&#39;re going to use the fruits of `&lt;=3D&gt;`: the implicit g=
eneration of the other 2/6 operators in both directions.</div><div><br></di=
v><div>So you would need a special rule for `&lt;=3D&gt;` when applied to a=
rrays saying that they <i>don&#39;t</i> generate the other 2/6 operations f=
or them. That would be highly inconsistent.</div><div><br></div><div>If com=
parison with those operators isn&#39;t going to work for language arrays, w=
hy should it work for `&lt;=3D&gt;`? At least with it the way it is at pres=
ent, we can later (after removing the old behavior) change the behavior to =
work the way we want. Or we can just ditch language arrays altogether.<br><=
/div></div></blockquote></div>

<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/6c44093f-c431-4f80-8688-f6d978a1b080%=
40isocpp.org?utm_medium=3Demail&utm_source=3Dfooter">https://groups.google.=
com/a/isocpp.org/d/msgid/std-proposals/6c44093f-c431-4f80-8688-f6d978a1b080=
%40isocpp.org</a>.<br />

------=_Part_8469_1813322198.1529090054260--

------=_Part_8468_446422807.1529090054260--

.
