Topic: Concepts lite: why concept bool?
Author: Igor Baidiuk <target.san@gmail.com>
Date: Wed, 30 Sep 2015 05:04:01 -0700 (PDT)
Raw View
------=_Part_4563_857916673.1443614641421
Content-Type: multipart/alternative;
boundary="----=_Part_4564_1704649889.1443614641421"
------=_Part_4564_1704649889.1443614641421
Content-Type: text/plain; charset=UTF-8
Hello,
To be short. As I understand, concepts always result in constexpr bool
value. So, why `concept bool Foo` and not just `concept Foo`?
Any ideas?
Thanks
--
---
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/.
------=_Part_4564_1704649889.1443614641421
Content-Type: text/html; charset=UTF-8
<div dir="ltr">Hello,<br><br>To be short. As I understand, concepts always result in constexpr bool value. So, why `concept bool Foo` and not just `concept Foo`?<br>Any ideas?<br><br>Thanks<br></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 email to <a href="mailto:std-proposals+unsubscribe@isocpp.org">std-proposals+unsubscribe@isocpp.org</a>.<br />
To post to this group, send email to <a href="mailto:std-proposals@isocpp.org">std-proposals@isocpp.org</a>.<br />
Visit this group at <a href="http://groups.google.com/a/isocpp.org/group/std-proposals/">http://groups.google.com/a/isocpp.org/group/std-proposals/</a>.<br />
------=_Part_4564_1704649889.1443614641421--
------=_Part_4563_857916673.1443614641421--
.
Author: Bengt Gustafsson <bengt.gustafsson@beamways.com>
Date: Wed, 30 Sep 2015 07:40:02 -0700 (PDT)
Raw View
------=_Part_235_1738312977.1443624002540
Content-Type: multipart/alternative;
boundary="----=_Part_236_1046425066.1443624002549"
------=_Part_236_1046425066.1443624002549
Content-Type: text/plain; charset=UTF-8
There are many strange things with that syntax. I really hope it will be
cleaned up before standardization. I think most of it is leftovers from the
initial thoughts of concept lite being just an application of constexpr
functions.
I think that the connection to functions should be severed totally and
concept be recognized as a separate entity so that it does not have to be
syntactically "equivalent" to some preexisting entity. Removing the bool is
just one improvement that could be made.
Your initial question is also interesting, maybe there are thoughts on
generalizing this to other types, but I can't figure out a use case for
that... anyone?
Den onsdag 30 september 2015 kl. 14:04:01 UTC+2 skrev Igor Baidiuk:
>
> Hello,
>
> To be short. As I understand, concepts always result in constexpr bool
> value. So, why `concept bool Foo` and not just `concept Foo`?
> Any ideas?
>
> Thanks
>
--
---
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/.
------=_Part_236_1046425066.1443624002549
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable
<div dir=3D"ltr">There are many strange things with that syntax. I really h=
ope it will be cleaned up before standardization. I think most of it is lef=
tovers from the initial thoughts of concept lite being just an application =
of constexpr functions.<div><br></div><div>I think that the connection to f=
unctions should be severed totally and concept be recognized as a separate =
entity so that it does not have to be syntactically "equivalent" =
to some preexisting entity. Removing the bool is just one improvement that =
could be made.</div><div><br></div><div>Your initial question is also inter=
esting, maybe there are thoughts on generalizing this to other types, but I=
can't figure out a use case for that... anyone?<br><br>Den onsdag 30 s=
eptember 2015 kl. 14:04:01 UTC+2 skrev Igor Baidiuk:<blockquote class=3D"gm=
ail_quote" style=3D"margin: 0;margin-left: 0.8ex;border-left: 1px #ccc soli=
d;padding-left: 1ex;"><div dir=3D"ltr">Hello,<br><br>To be short. As I unde=
rstand, concepts always result in constexpr bool value. So, why `concept bo=
ol Foo` and not just `concept Foo`?<br>Any ideas?<br><br>Thanks<br></div></=
blockquote></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" 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 />
------=_Part_236_1046425066.1443624002549--
------=_Part_235_1738312977.1443624002540--
.
Author: Patrice Roy <patricer@gmail.com>
Date: Thu, 1 Oct 2015 23:59:38 -0400
Raw View
--001a113fe5fa4e8f8f05211731d0
Content-Type: text/plain; charset=UTF-8
It's been discussed in Core at Lenexa and we did not reach an agreement. If
my memory's correct, the risk of slowing down concepts' adoption outweighed
the impression we had (with little prior experience) that removing four
letters would be a good idea. Maybe it will go away once we've accumulated
more hand-on experience with concepts, but it's too early to tell.
Cheers!
2015-09-30 10:40 GMT-04:00 Bengt Gustafsson <bengt.gustafsson@beamways.com>:
> There are many strange things with that syntax. I really hope it will be
> cleaned up before standardization. I think most of it is leftovers from the
> initial thoughts of concept lite being just an application of constexpr
> functions.
>
> I think that the connection to functions should be severed totally and
> concept be recognized as a separate entity so that it does not have to be
> syntactically "equivalent" to some preexisting entity. Removing the bool is
> just one improvement that could be made.
>
> Your initial question is also interesting, maybe there are thoughts on
> generalizing this to other types, but I can't figure out a use case for
> that... anyone?
>
>
> Den onsdag 30 september 2015 kl. 14:04:01 UTC+2 skrev Igor Baidiuk:
>>
>> Hello,
>>
>> To be short. As I understand, concepts always result in constexpr bool
>> value. So, why `concept bool Foo` and not just `concept Foo`?
>> Any ideas?
>>
>> Thanks
>>
> --
>
> ---
> 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/.
--001a113fe5fa4e8f8f05211731d0
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable
<div dir=3D"ltr"><div>It's been discussed in Core at Lenexa and we did =
not reach an agreement. If my memory's correct, the risk of slowing dow=
n concepts' adoption outweighed the impression we had (with little prio=
r experience) that removing four letters would be a good idea. Maybe it wil=
l go away once we've accumulated more hand-on experience with concepts,=
but it's too early to tell.<br><br></div>Cheers!<br></div><div class=
=3D"gmail_extra"><br><div class=3D"gmail_quote">2015-09-30 10:40 GMT-04:00 =
Bengt Gustafsson <span dir=3D"ltr"><<a href=3D"mailto:bengt.gustafsson@b=
eamways.com" target=3D"_blank">bengt.gustafsson@beamways.com</a>></span>=
:<br><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-le=
ft:1px #ccc solid;padding-left:1ex"><div dir=3D"ltr">There are many strange=
things with that syntax. I really hope it will be cleaned up before standa=
rdization. I think most of it is leftovers from the initial thoughts of con=
cept lite being just an application of constexpr functions.<div><br></div><=
div>I think that the connection to functions should be severed totally and =
concept be recognized as a separate entity so that it does not have to be s=
yntactically "equivalent" to some preexisting entity. Removing th=
e bool is just one improvement that could be made.</div><div><br></div><div=
>Your initial question is also interesting, maybe there are thoughts on gen=
eralizing this to other types, but I can't figure out a use case for th=
at... anyone?<div><div class=3D"h5"><br><br>Den onsdag 30 september 2015 kl=
.. 14:04:01 UTC+2 skrev Igor Baidiuk:<blockquote class=3D"gmail_quote" style=
=3D"margin:0;margin-left:0.8ex;border-left:1px #ccc solid;padding-left:1ex"=
><div dir=3D"ltr">Hello,<br><br>To be short. As I understand, concepts alwa=
ys result in constexpr bool value. So, why `concept bool Foo` and not just =
`concept Foo`?<br>Any ideas?<br><br>Thanks<br></div></blockquote></div></di=
v></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" 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>
<p></p>
-- <br />
<br />
--- <br />
You received this message because you are subscribed to the Google Groups &=
quot;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 />
--001a113fe5fa4e8f8f05211731d0--
.
Author: David Krauss <potswa@gmail.com>
Date: Fri, 2 Oct 2015 13:48:41 +0800
Raw View
--Apple-Mail=_1CD3EF1D-EC8F-4193-8186-4B60E2920A90
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain; charset=UTF-8
> On 2015=E2=80=9310=E2=80=9302, at 11:59 AM, Patrice Roy <patricer@gmail.c=
om> wrote:
>=20
> It's been discussed in Core at Lenexa and we did not reach an agreement. =
If my memory's correct, the risk of slowing down concepts' adoption outweig=
hed the impression we had (with little prior experience) that removing four=
letters would be a good idea. Maybe it will go away once we've accumulated=
more hand-on experience with concepts, but it's too early to tell.
See also comment US 23 in N4550. It mentions a proposal intended for Lenexa=
with grammar:
template <typename T>
concept C =3D predicate;
It seems that the evolutionary path is to treat TS 19217 as a milestone and=
a reference point, but it doesn=E2=80=99t need to be uncontroversial enoug=
h for adoption into the C++ standard. I=E2=80=99m not looking to see whethe=
r the US 23 proposal was actually reviewed in Lenexa, but I=E2=80=99d guess=
that it will be (re)considered in the future.
--=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=_1CD3EF1D-EC8F-4193-8186-4B60E2920A90
Content-Transfer-Encoding: quoted-printable
Content-Type: text/html; charset=UTF-8
<html><head><meta http-equiv=3D"Content-Type" content=3D"text/html charset=
=3Dutf-8"></head><body style=3D"word-wrap: break-word; -webkit-nbsp-mode: s=
pace; -webkit-line-break: after-white-space;" class=3D""><br class=3D""><di=
v><blockquote type=3D"cite" class=3D""><div class=3D"">On 2015=E2=80=9310=
=E2=80=9302, at 11:59 AM, Patrice Roy <<a href=3D"mailto:patricer@gmail.=
com" class=3D"">patricer@gmail.com</a>> wrote:</div><br class=3D"Apple-i=
nterchange-newline"><div class=3D""><div dir=3D"ltr" class=3D""><div class=
=3D"">It's been discussed in Core at Lenexa and we did not reach an agreeme=
nt. If my memory's correct, the risk of slowing down concepts' adoption out=
weighed the impression we had (with little prior experience) that removing =
four letters would be a good idea. Maybe it will go away once we've accumul=
ated more hand-on experience with concepts, but it's too early to tell.<br =
class=3D""></div></div></div></blockquote></div><br class=3D""><div class=
=3D"">See also comment US 23 in N4550. It mentions a proposal intended for =
Lenexa with grammar:</div><div class=3D""><br class=3D""></div><div class=
=3D""><font face=3D"Courier" class=3D"">template <typename T><br clas=
s=3D"">concept C =3D predicate;</font></div><div class=3D""><br class=3D"">=
</div><div class=3D"">It seems that the evolutionary path is to treat TS 19=
217 as a milestone and a reference point, but it doesn=E2=80=99t need =
to be uncontroversial enough for adoption into the C++ standard. I=E2=80=99=
m not looking to see whether the US 23 proposal was actually reviewed in Le=
nexa, but I=E2=80=99d guess that it will be (re)considered in the future.</=
div><div class=3D""><br class=3D""></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" 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=_1CD3EF1D-EC8F-4193-8186-4B60E2920A90--
.