Topic: P0116: Boolean conversion for Standard Library types


Author: Robert Kawulak <robert.kawulak@gmail.com>
Date: Thu, 1 Oct 2015 15:46:01 +0200
Raw View
This is a multi-part message in MIME format.

------=_NextPart_000_028B_01D0FC60.4768B9D0
Content-Type: text/plain; charset=UTF-8

Hi,



I've written the paper
<http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2015/p0116r0.html>
proposing addition of explicit bool conversion operator to a few Standard
Library types (bitset, duration and complex).



I'm not attending the Kona meeting - would somebody who does be so kind to
present the paper to the Commitee in my name? If so, please let me know
privately.



Also, discussion about the proposal is welcome.



Best regards,

Robert

--

---
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.
Visit this group at http://groups.google.com/a/isocpp.org/group/std-proposals/.

------=_NextPart_000_028B_01D0FC60.4768B9D0
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

<html xmlns:v=3D"urn:schemas-microsoft-com:vml" xmlns:o=3D"urn:schemas-micr=
osoft-com:office:office" xmlns:w=3D"urn:schemas-microsoft-com:office:word" =
xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" xmlns=3D"http:=
//www.w3.org/TR/REC-html40"><head><meta http-equiv=3DContent-Type content=
=3D"text/html; charset=3Dus-ascii"><meta name=3DGenerator content=3D"Micros=
oft Word 12 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
 {font-family:"Cambria Math";
 panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
 {font-family:Calibri;
 panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
 {margin:0cm;
 margin-bottom:.0001pt;
 font-size:11.0pt;
 font-family:"Calibri","sans-serif";}
a:link, span.MsoHyperlink
 {mso-style-priority:99;
 color:blue;
 text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
 {mso-style-priority:99;
 color:purple;
 text-decoration:underline;}
p.MsoPlainText, li.MsoPlainText, div.MsoPlainText
 {mso-style-priority:99;
 mso-style-link:"Plain Text Char";
 margin:0cm;
 margin-bottom:.0001pt;
 font-size:10.5pt;
 font-family:"Courier New";}
span.PlainTextChar
 {mso-style-name:"Plain Text Char";
 mso-style-priority:99;
 mso-style-link:"Plain Text";
 font-family:"Courier New";}
..MsoChpDefault
 {mso-style-type:export-only;}
@page WordSection1
 {size:612.0pt 792.0pt;
 margin:70.85pt 70.85pt 70.85pt 70.85pt;}
div.WordSection1
 {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]--></head><body lang=3DPL link=3Dblue vlink=
=3Dpurple><div class=3DWordSection1><p class=3DMsoPlainText><span lang=3DEN=
-GB>Hi,<o:p></o:p></span></p><p class=3DMsoPlainText><span lang=3DEN-GB><o:=
p>&nbsp;</o:p></span></p><p class=3DMsoPlainText><span lang=3DEN-GB>I've wr=
itten <a href=3D"http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2015/p0=
116r0.html">the paper</a> proposing addition of explicit bool conversion op=
erator to a few Standard Library types (bitset, duration and complex).<o:p>=
</o:p></span></p><p class=3DMsoPlainText><span lang=3DEN-GB><o:p>&nbsp;</o:=
p></span></p><p class=3DMsoPlainText><span lang=3DEN-GB>I'm not attending t=
he Kona meeting &#8211; would somebody who does be so kind to present the p=
aper to the Commitee in my name? If so, please let me know privately.<o:p><=
/o:p></span></p><p class=3DMsoPlainText><span lang=3DEN-GB><o:p>&nbsp;</o:p=
></span></p><p class=3DMsoPlainText><span lang=3DEN-GB>Also, discussion abo=
ut the proposal is welcome.<o:p></o:p></span></p><p class=3DMsoPlainText><s=
pan lang=3DEN-GB><o:p>&nbsp;</o:p></span></p><p class=3DMsoPlainText><span =
lang=3DEN-GB>Best regards,<o:p></o:p></span></p><p class=3DMsoPlainText><sp=
an lang=3DEN-GB>Robert<o:p></o:p></span></p></div></body></html>

<p></p>

-- <br />
<br />
--- <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 />
Visit this group at <a href=3D"http://groups.google.com/a/isocpp.org/group/=
std-proposals/">http://groups.google.com/a/isocpp.org/group/std-proposals/<=
/a>.<br />

------=_NextPart_000_028B_01D0FC60.4768B9D0--


.


Author: Alisdair Meredith <alisdairm@me.com>
Date: Thu, 01 Oct 2015 14:56:18 -0400
Raw View
--Apple-Mail-41B0D5FB-498B-4AFC-A47E-D6533FD1F288
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

I can see the rationale for numeric types like 'complex' and 'duration' - I=
 strongly prefer using named functions with 'bitset' so that it is clear wh=
ether I am testing for 'any' bit being set, or 'all' bits being set.

If you are happy for me to champion under those terms, I will represent the=
 paper.

Sent from my iPhone

> On Oct 1, 2015, at 9:46 AM, Robert Kawulak <robert.kawulak@gmail.com> wro=
te:
>=20
> Hi,
> =20
> I've written the paper proposing addition of explicit bool conversion ope=
rator to a few Standard Library types (bitset, duration and complex).
> =20
> I'm not attending the Kona meeting =E2=80=93 would somebody who does be s=
o kind to present the paper to the Commitee in my name? If so, please let m=
e know privately.
> =20
> Also, discussion about the proposal is welcome.
> =20
> Best regards,
> Robert
> --=20
>=20
> ---=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.
> Visit this group at http://groups.google.com/a/isocpp.org/group/std-propo=
sals/.

--=20

---=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.
Visit this group at http://groups.google.com/a/isocpp.org/group/std-proposa=
ls/.

--Apple-Mail-41B0D5FB-498B-4AFC-A47E-D6533FD1F288
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 can see the rationale for numeri=
c types like 'complex' and 'duration' - I strongly prefer using named funct=
ions with 'bitset' so that it is clear whether I am testing for 'any' bit b=
eing set, or 'all' bits being set.</div><div id=3D"AppleMailSignature"><br>=
</div><div id=3D"AppleMailSignature">If you are happy for me to champion un=
der those terms, I will represent the paper.<br><br>Sent from my iPhone</di=
v><div><br>On Oct 1, 2015, at 9:46 AM, Robert Kawulak &lt;<a href=3D"mailto=
:robert.kawulak@gmail.com">robert.kawulak@gmail.com</a>&gt; wrote:<br><br><=
/div><blockquote type=3D"cite"><div><meta http-equiv=3D"Content-Type" conte=
nt=3D"text/html; charset=3Dus-ascii"><meta name=3D"Generator" content=3D"Mi=
crosoft Word 12 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
 {font-family:"Cambria Math";
 panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
 {font-family:Calibri;
 panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
 {margin:0cm;
 margin-bottom:.0001pt;
 font-size:11.0pt;
 font-family:"Calibri","sans-serif";}
a:link, span.MsoHyperlink
 {mso-style-priority:99;
 color:blue;
 text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
 {mso-style-priority:99;
 color:purple;
 text-decoration:underline;}
p.MsoPlainText, li.MsoPlainText, div.MsoPlainText
 {mso-style-priority:99;
 mso-style-link:"Plain Text Char";
 margin:0cm;
 margin-bottom:.0001pt;
 font-size:10.5pt;
 font-family:"Courier New";}
span.PlainTextChar
 {mso-style-name:"Plain Text Char";
 mso-style-priority:99;
 mso-style-link:"Plain Text";
 font-family:"Courier New";}
..MsoChpDefault
 {mso-style-type:export-only;}
@page WordSection1
 {size:612.0pt 792.0pt;
 margin:70.85pt 70.85pt 70.85pt 70.85pt;}
div.WordSection1
 {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext=3D"edit">
<o:idmap v:ext=3D"edit" data=3D"1" />
</o:shapelayout></xml><![endif]--><div class=3D"WordSection1"><p class=3D"M=
soPlainText"><span lang=3D"EN-GB">Hi,<o:p></o:p></span></p><p class=3D"MsoP=
lainText"><span lang=3D"EN-GB"><o:p>&nbsp;</o:p></span></p><p class=3D"MsoP=
lainText"><span lang=3D"EN-GB">I've written <a href=3D"http://www.open-std.=
org/jtc1/sc22/wg21/docs/papers/2015/p0116r0.html">the paper</a> proposing a=
ddition of explicit bool conversion operator to a few Standard Library type=
s (bitset, duration and complex).<o:p></o:p></span></p><p class=3D"MsoPlain=
Text"><span lang=3D"EN-GB"><o:p>&nbsp;</o:p></span></p><p class=3D"MsoPlain=
Text"><span lang=3D"EN-GB">I'm not attending the Kona meeting =E2=80=93 wou=
ld somebody who does be so kind to present the paper to the Commitee in my =
name? If so, please let me know privately.<o:p></o:p></span></p><p class=3D=
"MsoPlainText"><span lang=3D"EN-GB"><o:p>&nbsp;</o:p></span></p><p class=3D=
"MsoPlainText"><span lang=3D"EN-GB">Also, discussion about the proposal is =
welcome.<o:p></o:p></span></p><p class=3D"MsoPlainText"><span lang=3D"EN-GB=
"><o:p>&nbsp;</o:p></span></p><p class=3D"MsoPlainText"><span lang=3D"EN-GB=
">Best regards,<o:p></o:p></span></p><p class=3D"MsoPlainText"><span lang=
=3D"EN-GB">Robert<o:p></o:p></span></p></div>

<p></p>

-- <br>
<br>
--- <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>
Visit this group at <a href=3D"http://groups.google.com/a/isocpp.org/group/=
std-proposals/">http://groups.google.com/a/isocpp.org/group/std-proposals/<=
/a>.<br>
</div></blockquote></body></html>

<p></p>

-- <br />
<br />
--- <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 />
Visit this group at <a href=3D"http://groups.google.com/a/isocpp.org/group/=
std-proposals/">http://groups.google.com/a/isocpp.org/group/std-proposals/<=
/a>.<br />

--Apple-Mail-41B0D5FB-498B-4AFC-A47E-D6533FD1F288--

.


Author: Tony V E <tvaneerd@gmail.com>
Date: Thu, 1 Oct 2015 15:31:58 -0400
Raw View
--001a11c3c8babb752705211019cc
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

On Thu, Oct 1, 2015 at 2:56 PM, Alisdair Meredith <alisdairm@me.com> wrote:

> I can see the rationale for numeric types like 'complex' and 'duration' -
> I strongly prefer using named functions with 'bitset' so that it is clear
> whether I am testing for 'any' bit being set, or 'all' bits being set.
>

assert(0b001010);

the boolean of a bitset should clearly be 'any' bit being set.



>
> If you are happy for me to champion under those terms, I will represent
> the paper.
>
> Sent from my iPhone
>
> On Oct 1, 2015, at 9:46 AM, Robert Kawulak <robert.kawulak@gmail.com>
> wrote:
>
> Hi,
>
>
>
> I've written the paper
> <http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2015/p0116r0.html>
> proposing addition of explicit bool conversion operator to a few Standard
> Library types (bitset, duration and complex).
>
>
>
> I'm not attending the Kona meeting =E2=80=93 would somebody who does be s=
o kind to
> present the paper to the Commitee in my name? If so, please let me know
> privately.
>
>
>
> Also, discussion about the proposal is welcome.
>
>
>
> Best regards,
>
> Robert
>
> --
>
> ---
> 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.
> Visit this group at
> http://groups.google.com/a/isocpp.org/group/std-proposals/.
>
> --
>
> ---
> 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.
> Visit this group at
> http://groups.google.com/a/isocpp.org/group/std-proposals/.
>

--=20

---=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.
Visit this group at http://groups.google.com/a/isocpp.org/group/std-proposa=
ls/.

--001a11c3c8babb752705211019cc
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><br><div class=3D"gmail_extra"><br><div class=3D"gmail_quo=
te">On Thu, Oct 1, 2015 at 2:56 PM, Alisdair Meredith <span dir=3D"ltr">&lt=
;<a href=3D"mailto:alisdairm@me.com" target=3D"_blank">alisdairm@me.com</a>=
&gt;</span> wrote:<br><blockquote class=3D"gmail_quote" style=3D"margin:0 0=
 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir=3D"auto"><div=
>I can see the rationale for numeric types like &#39;complex&#39; and &#39;=
duration&#39; - I strongly prefer using named functions with &#39;bitset&#3=
9; so that it is clear whether I am testing for &#39;any&#39; bit being set=
, or &#39;all&#39; bits being set.</div></div></blockquote><div><br></div><=
div>assert(0b001010);<br><br></div><div>the boolean of a bitset should clea=
rly be &#39;any&#39; bit being set.<br><br></div><div>=C2=A0<br></div><bloc=
kquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #cc=
c solid;padding-left:1ex"><div dir=3D"auto"><div><br></div><div>If you are =
happy for me to champion under those terms, I will represent the paper.<br>=
<br>Sent from my iPhone</div><div><div class=3D"h5"><div><br>On Oct 1, 2015=
, at 9:46 AM, Robert Kawulak &lt;<a href=3D"mailto:robert.kawulak@gmail.com=
" target=3D"_blank">robert.kawulak@gmail.com</a>&gt; wrote:<br><br></div><b=
lockquote type=3D"cite"><div><div><p><span lang=3D"EN-GB">Hi,<u></u><u></u>=
</span></p><p><span lang=3D"EN-GB"><u></u>=C2=A0<u></u></span></p><p><span =
lang=3D"EN-GB">I&#39;ve written <a href=3D"http://www.open-std.org/jtc1/sc2=
2/wg21/docs/papers/2015/p0116r0.html" target=3D"_blank">the paper</a> propo=
sing addition of explicit bool conversion operator to a few Standard Librar=
y types (bitset, duration and complex).<u></u><u></u></span></p><p><span la=
ng=3D"EN-GB"><u></u>=C2=A0<u></u></span></p><p><span lang=3D"EN-GB">I&#39;m=
 not attending the Kona meeting =E2=80=93 would somebody who does be so kin=
d to present the paper to the Commitee in my name? If so, please let me kno=
w privately.<u></u><u></u></span></p><p><span lang=3D"EN-GB"><u></u>=C2=A0<=
u></u></span></p><p><span lang=3D"EN-GB">Also, discussion about the proposa=
l is welcome.<u></u><u></u></span></p><p><span lang=3D"EN-GB"><u></u>=C2=A0=
<u></u></span></p><p><span lang=3D"EN-GB">Best regards,<u></u><u></u></span=
></p><p><span lang=3D"EN-GB">Robert<u></u><u></u></span></p></div>

<p></p>

-- <br>
<br>
--- <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" target=3D"_=
blank">std-proposals+unsubscribe@isocpp.org</a>.<br>
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org" target=3D"_blank">std-proposals@isocpp.org</a>.<br>
Visit this group at <a href=3D"http://groups.google.com/a/isocpp.org/group/=
std-proposals/" target=3D"_blank">http://groups.google.com/a/isocpp.org/gro=
up/std-proposals/</a>.<br>
</div></blockquote></div></div></div><div class=3D"HOEnZb"><div class=3D"h5=
">

<p></p>

-- <br>
<br>
--- <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" target=3D"_=
blank">std-proposals+unsubscribe@isocpp.org</a>.<br>
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org" target=3D"_blank">std-proposals@isocpp.org</a>.<br>
Visit this group at <a href=3D"http://groups.google.com/a/isocpp.org/group/=
std-proposals/" target=3D"_blank">http://groups.google.com/a/isocpp.org/gro=
up/std-proposals/</a>.<br>
</div></div></blockquote></div><br></div></div>

<p></p>

-- <br />
<br />
--- <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 />
Visit this group at <a href=3D"http://groups.google.com/a/isocpp.org/group/=
std-proposals/">http://groups.google.com/a/isocpp.org/group/std-proposals/<=
/a>.<br />

--001a11c3c8babb752705211019cc--

.


Author: Robert Kawulak <robert.kawulak@gmail.com>
Date: Fri, 2 Oct 2015 16:35:04 +0200
Raw View
2015-10-01 20:56 GMT+02:00, Alisdair Meredith <alisdairm@me.com>:
> I strongly prefer using named functions with 'bitset' so that it is clear
> whether I am testing for 'any' bit being set, or 'all' bits being set.

Actually bitset, along with duration, was my main motivation for
working on this topic. The one thing I miss in bitset compared to
using bare unsigned ints for bitmasks is bool conversion. Like in:

    if (auto errorBits = GetErrorBits() ) {
        // there are some error bits set, handle this
    }

I wouldn't think that there could be a confusion between any/all
semantics for bitset bool conversion. Would you agree to tentatively
keep bitset in the proposal and ask for the judgement of the rest of
the Committee?

--

---
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.
Visit this group at http://groups.google.com/a/isocpp.org/group/std-proposals/.

.


Author: Ville Voutilainen <ville.voutilainen@gmail.com>
Date: Fri, 2 Oct 2015 17:39:40 +0300
Raw View
On 2 October 2015 at 17:35, Robert Kawulak <robert.kawulak@gmail.com> wrote:
> I wouldn't think that there could be a confusion between any/all
> semantics for bitset bool conversion. Would you agree to tentatively
> keep bitset in the proposal and ask for the judgement of the rest of
> the Committee?

If your potential paper champion wants to remove less-than-obviously-bad
portions from your paper, find a different champion. :)

--

---
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.
Visit this group at http://groups.google.com/a/isocpp.org/group/std-proposals/.

.