220 31507 <538fc521-2e25-4788-b3cd-a065d1151671@isocpp.org> article
Path: news.gmane.org!.POSTED!not-for-mail
From: Nicol Bolas <jmckesson@gmail.com>
Newsgroups: gmane.comp.lang.c++.isocpp.proposals
Subject: Re: Re: compressed std::bitset<N>
Date: Wed, 8 Mar 2017 06:38:55 -0800 (PST)
Lines: 121
Approved: news@gmane.org
Message-ID: <538fc521-2e25-4788-b3cd-a065d1151671@isocpp.org>
References: <32cfea0a-7df8-47cf-47fd-549985f12295@wanadoo.fr>
 <06e829ca-417b-470c-95ca-c661e8752f79@isocpp.org>
 <cba4201d-6ef5-8a89-b144-e849f6de5b06@wanadoo.fr>
Reply-To: std-proposals@isocpp.org
NNTP-Posting-Host: blaine.gmane.org
Mime-Version: 1.0
Content-Type: multipart/mixed; 
	boundary="----=_Part_209_1591212714.1488983935412"
X-Trace: blaine.gmane.org 1488983939 22044 195.159.176.226 (8 Mar 2017 14:38:59 GMT)
X-Complaints-To: usenet@blaine.gmane.org
NNTP-Posting-Date: Wed, 8 Mar 2017 14:38:59 +0000 (UTC)
To: ISO C++ Standard - Future Proposals <std-proposals@isocpp.org>
Original-X-From: std-proposals+bncBCEKFTV6ZUMBBAFPQDDAKGQE33VBZNQ@isocpp.org Wed Mar 08 15:38:54 2017
Return-path: <std-proposals+bncBCEKFTV6ZUMBBAFPQDDAKGQE33VBZNQ@isocpp.org>
Envelope-to: gclcip-std-proposals@m.gmane.org
Original-Received: from mail-pg0-f70.google.com ([74.125.83.70])
	by blaine.gmane.org with esmtp (Exim 4.84_2)
	(envelope-from <std-proposals+bncBCEKFTV6ZUMBBAFPQDDAKGQE33VBZNQ@isocpp.org>)
	id 1clcjq-00058c-W4
	for gclcip-std-proposals@m.gmane.org; Wed, 08 Mar 2017 15:38:51 +0100
Original-Received: by mail-pg0-f70.google.com with SMTP id q126sf59748263pga.0
        for <gclcip-std-proposals@m.gmane.org>; Wed, 08 Mar 2017 06:38:57 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=isocpp-org.20150623.gappssmtp.com; s=20150623;
        h=date:from:to: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=A5PCCquJahIpMfAe7uLriZWup+ZYSV536P9RsFnthvo=;
        b=wKSxRPPkIk73yGXccBi1CwDbXXOORMl44ZPYxVefFOIgNLN5N2Rcy+S5vX+5Plp1/O
         U4OMzU8iIJyZt0HPEWvomOQ7eragn7aWz7ejXiWrfGEFgkBySx7G6mLhkBN24/JWQEQl
         sPydthQGtcr0wa3q04IFM/XOdtNhYoaKT3YkUA381c7iISdnEH/HwniYehSfOdShdRWM
         Ffcqo+g3kNCw088zqdh18K28IGVhKq7OS7oLe2EqJDq5Fq6Qqt8WfYttMpExRvVbMuf8
         gDxejaWpHdXuiERgyKA6k15IXKHU9ndLDbPvq83uDyCVm0sfCiJIAMA1TlbI/9FNyYw6
         Ibkg==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20161025;
        h=date:from:to: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=A5PCCquJahIpMfAe7uLriZWup+ZYSV536P9RsFnthvo=;
        b=s8v/hTzRXWm4YiDTnb4go47B5kLf8H3dUeM6gYW4OopiNESTe8hNPzq36b0UmpZ05k
         XfYkRnmYo0uMEFuxfTzPM4XohCaAGyJofaA27nBB8Gk3bXNYE6hfoUS+IRJ++BebmeOq
         QWkRfJRDz+rT+ulyQVpomNxRIx1/kTgubYzweArAekjQWs6nFoCWXbWufNBVIBpoMKYy
         nQ0Y5tzZ0z3oWbzQLXn2wLwq0cAYnc/cBbcwbfZ5N8T7+36na8/H1cFWTKsuoZm+3jUh
         rm1kexljSSapGJysCL1lITSDuBXd3GjeJaXE1ZywLB8+qtfxet65D1w2rYpOkSa9mtjj
         K6zA==
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: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=A5PCCquJahIpMfAe7uLriZWup+ZYSV536P9RsFnthvo=;
        b=cDb2Ml1f8E7SUQcM3F10cwY8vss0p5m4/lRdXaqA85eH/JzLU9jyovV6WIrBtANbKm
         GF03CD8oTgQG7sS+dsVew9ywKEcDMPQW76LFgAyofi5El8pXiOFO0LvwRnN7GZ2cTWmH
         J1p4s18/4DS5CBHZWR+B4qLNJtaFRc4F76F83KVqZz+XZpO6Zk0vLqUT9vJCG9xZCvJN
         9+TfqALfvOPBAJAtMRlpuszzWvzpJdDLGyV9wv1CDlREyLxAYaw3R1zYphbLa+lqYWrB
         oc3jD5odGAnTaDUkNYuuYOj7Z0e2xeZYVglhGi4xAVTdDevyyds3NM8MJfn1kIm8Artx
         henA==
X-Gm-Message-State: AMke39kbHKkt6Lo+AStbFjuZBggBGxSvJZ5LPkZ4346SoLwOF3HQYVrHQ6JbxcMMHc6Hvw==
X-Received: by 10.99.109.203 with SMTP id i194mr2833350pgc.134.1488983936746;
        Wed, 08 Mar 2017 06:38:56 -0800 (PST)
X-BeenThere: std-proposals@isocpp.org
Original-Received: by 10.157.7.195 with SMTP id 61ls1922516oto.31.gmail; Wed, 08 Mar
 2017 06:38:55 -0800 (PST)
X-Received: by 10.157.16.48 with SMTP id h45mr867203ote.10.1488983935934;
        Wed, 08 Mar 2017 06:38:55 -0800 (PST)
In-Reply-To: <cba4201d-6ef5-8a89-b144-e849f6de5b06@wanadoo.fr>
X-Original-Sender: jmckesson@gmail.com
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:31507
Archived-At: <http://permalink.gmane.org/gmane.comp.lang.c++.isocpp.proposals/31507>

------=_Part_209_1591212714.1488983935412
Content-Type: multipart/alternative; 
	boundary="----=_Part_210_1595717642.1488983935412"

------=_Part_210_1595717642.1488983935412
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable



On Wednesday, March 8, 2017 at 7:29:33 AM UTC-5, Vicente J. Botet Escriba=
=20
wrote:
>
> Le 21/02/2017 =C3=A0 21:40, rick...@hotmail.com <javascript:> a =C3=A9cri=
t :
>
> Hi Vicente,=20
>
> I think the Bitset2 <https://github.com/ClaasBontus/bitset2>library by=20
> Claas Bontus provides what you are looking for. It's like std::bitset but=
=20
> with enhanced functionality. It let's you set the underlying integral typ=
e=20
> of the bitset. In fact, it defaults to uint8_t, uint16_t, or uint32_t if =
N bits=20
> fit into those integers. I would like this functionality added to=20
> std::bitset but, as you said, it would probably be a breaking change.
>
> Thanks for the link. Yes, this is close to what I need and in addition=20
> generalize well to more than 64 bits.
>
> As we would have span soon,  the data() function should IMO return a span=
..
>

In which case it should not be called `data`. The current uses of that=20
function return a pointer, not a `span` or a range.

--=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/538fc521-2e25-4788-b3cd-a065d1151671%40isocpp.or=
g.

------=_Part_210_1595717642.1488983935412
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><br><br>On Wednesday, March 8, 2017 at 7:29:33 AM UTC-5, V=
icente J. Botet Escriba wrote:<blockquote class=3D"gmail_quote" style=3D"ma=
rgin: 0;margin-left: 0.8ex;border-left: 1px #ccc solid;padding-left: 1ex;">
 =20
   =20
 =20
  <div bgcolor=3D"#FFFFFF" text=3D"#000000">
    <div>Le 21/02/2017 =C3=A0 21:40,
      <a href=3D"javascript:" target=3D"_blank" gdf-obfuscated-mailto=3D"ou=
wQDnPPCwAJ" rel=3D"nofollow" onmousedown=3D"this.href=3D&#39;javascript:&#3=
9;;return true;" onclick=3D"this.href=3D&#39;javascript:&#39;;return true;"=
>rick...@hotmail.com</a> a =C3=A9crit=C2=A0:<br>
    </div>
    <blockquote type=3D"cite">
      <div dir=3D"ltr">Hi Vicente,
        <div><br>
        </div>
        <div><font size=3D"2" face=3D"arial, sans-serif">I think the <a hre=
f=3D"https://github.com/ClaasBontus/bitset2" target=3D"_blank" rel=3D"nofol=
low" onmousedown=3D"this.href=3D&#39;https://www.google.com/url?q\x3dhttps%=
3A%2F%2Fgithub.com%2FClaasBontus%2Fbitset2\x26sa\x3dD\x26sntz\x3d1\x26usg\x=
3dAFQjCNGK_wFmX3DVScYeyAQGywgQn25crA&#39;;return true;" onclick=3D"this.hre=
f=3D&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fgithub.com%2FClaasBo=
ntus%2Fbitset2\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNGK_wFmX3DVScYeyAQGyw=
gQn25crA&#39;;return true;">Bitset2 </a>library
            by Claas Bontus provides what you are looking for. It&#39;s lik=
e
            std::bitset but with enhanced functionality. It let&#39;s you
            set the underlying integral type of the bitset. In fact, it=C2=
=A0<span style=3D"color:rgb(51,51,51)">defaults to uint8_t,
              uint16_t, or uint32_t=C2=A0</span><span style=3D"color:rgb(51=
,51,51)">if N</span><span style=3D"color:rgb(51,51,51)">=C2=A0bits
              fit into those integers.</span>=C2=A0I would like this
            functionality added to std::bitset but, as you said, it
            would probably be a breaking change.</font></div>
        <div><br>
        </div>
      </div>
    </blockquote>
    Thanks for the link. Yes, this is close to what I need and in
    addition generalize well to more than 64 bits.<br>
    <br>
    As we would have span soon,=C2=A0 the data() function should IMO return=
 a
    span.<br></div></blockquote><div><br>In which case it should not be cal=
led `data`. The current uses of that function return a pointer, not a `span=
` or a range.</div><br></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/538fc521-2e25-4788-b3cd-a065d1151671%=
40isocpp.org?utm_medium=3Demail&utm_source=3Dfooter">https://groups.google.=
com/a/isocpp.org/d/msgid/std-proposals/538fc521-2e25-4788-b3cd-a065d1151671=
%40isocpp.org</a>.<br />

------=_Part_210_1595717642.1488983935412--

------=_Part_209_1591212714.1488983935412--

.
