Topic: Proposal : Generalized default arguments


Author: Etienne Boespflug <etienne.boespflug@gmail.com>
Date: Fri, 30 Sep 2016 20:37:51 -0700 (PDT)
Raw View
------=_Part_285_1539269336.1475293071539
Content-Type: multipart/alternative;
 boundary="----=_Part_286_1914524646.1475293071540"

------=_Part_286_1914524646.1475293071540
Content-Type: text/plain; charset=UTF-8

C++ chose a simple rule to support default arguments : the defaulted
arguments have to be at the end of the argument list :

void foo(int a, double d = 1.0, std::string s = {}); // well-formed

foo(1); // Call foo with (1, 1.0, std::string{}) for arguments.

void foo2(int a = 25, int b); // ill-formed.
foo2(1); // Call of foo(25, 1) ?

The proposal is to allow the use of the keyword *default *to solve the
ambiguity of the defaulted arguments which are not at the end of list of
argument :

void foo(int a = 25, int b); // well-formed, the defaulted argument has no
restriction

foo(36, 15); // well-formed, call foo with a = 36 and b = 15.
foo(12); // ill-formed.
foo(default, 15); // well-formed, call foo with a = 25 and b = 15.

Of course, the *default *keyword can be omitted if the defaulted arguments
are still at the end of the argument list :

void foo(int a = 25, int b, double d = 1.0, std::string s = {}) //
well-formed.

foo(15); // ill-formed.
foo(15, 8); // well-formed, call foo with a = 15, b = 8, d = 1.0 and s =
std::string{}.
foo(default, 8); // well-formed, call foo with a = 25, b = 8, d = 1.0 and s
= std::string{}.
foo(default, 8, default, "Hello !"s); // well-formed, call foo with a = 25,
b = 8, d = 1.0 and s = "Hello !".

If an argument is not specified in a function call, this argument is
implicitly *default*. Every argument specified in a call of function
corresponds to the argument of the same position in the declaration of the
function.

What do you think ?

--
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/isocpp.org/d/msgid/std-proposals/43185055-e4b7-4a92-86ec-1a3167067d39%40isocpp.org.

------=_Part_286_1914524646.1475293071540
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">C++ chose a simple rule to support default arguments : the=
 defaulted arguments have to be at the end of the argument list : <br><br><=
div style=3D"background-color: rgb(250, 250, 250); border-color: rgb(187, 1=
87, 187); border-style: solid; border-width: 1px; overflow-wrap: break-word=
;" class=3D"prettyprint"><code class=3D"prettyprint"><div class=3D"subprett=
yprint"><span style=3D"color: #008;" class=3D"styled-by-prettify">void</spa=
n><span style=3D"color: #000;" class=3D"styled-by-prettify"> foo</span><spa=
n style=3D"color: #660;" class=3D"styled-by-prettify">(</span><span style=
=3D"color: #008;" class=3D"styled-by-prettify">int</span><span style=3D"col=
or: #000;" class=3D"styled-by-prettify"> a</span><span style=3D"color: #660=
;" class=3D"styled-by-prettify">,</span><span style=3D"color: #000;" class=
=3D"styled-by-prettify"> </span><span style=3D"color: #008;" class=3D"style=
d-by-prettify">double</span><span style=3D"color: #000;" class=3D"styled-by=
-prettify"> d </span><span style=3D"color: #660;" class=3D"styled-by-pretti=
fy">=3D</span><span style=3D"color: #000;" class=3D"styled-by-prettify"> </=
span><span style=3D"color: #066;" class=3D"styled-by-prettify">1.0</span><s=
pan style=3D"color: #660;" class=3D"styled-by-prettify">,</span><span style=
=3D"color: #000;" class=3D"styled-by-prettify"> std</span><span style=3D"co=
lor: #660;" class=3D"styled-by-prettify">::</span><span style=3D"color: #00=
8;" class=3D"styled-by-prettify">string</span><span style=3D"color: #000;" =
class=3D"styled-by-prettify"> s </span><span style=3D"color: #660;" class=
=3D"styled-by-prettify">=3D</span><span style=3D"color: #000;" class=3D"sty=
led-by-prettify"> </span><span style=3D"color: #660;" class=3D"styled-by-pr=
ettify">{});</span><span style=3D"color: #000;" class=3D"styled-by-prettify=
"> </span><span style=3D"color: #800;" class=3D"styled-by-prettify">// well=
-formed</span><span style=3D"color: #000;" class=3D"styled-by-prettify"><br=
><br>foo</span><span style=3D"color: #660;" class=3D"styled-by-prettify">(<=
/span><span style=3D"color: #066;" class=3D"styled-by-prettify">1</span><sp=
an style=3D"color: #660;" class=3D"styled-by-prettify">);</span><span style=
=3D"color: #000;" class=3D"styled-by-prettify"> </span><span style=3D"color=
: #800;" class=3D"styled-by-prettify">// Call foo with (1, 1.0, std::string=
{}) for arguments.</span><span style=3D"color: #000;" class=3D"styled-by-pr=
ettify"><br><br></span><span style=3D"color: #008;" class=3D"styled-by-pret=
tify">void</span><span style=3D"color: #000;" class=3D"styled-by-prettify">=
 foo2</span><span style=3D"color: #660;" class=3D"styled-by-prettify">(</sp=
an><span style=3D"color: #008;" class=3D"styled-by-prettify">int</span><spa=
n style=3D"color: #000;" class=3D"styled-by-prettify"> a </span><span style=
=3D"color: #660;" class=3D"styled-by-prettify">=3D</span><span style=3D"col=
or: #000;" class=3D"styled-by-prettify"> </span><span style=3D"color: #066;=
" class=3D"styled-by-prettify">25</span><span style=3D"color: #660;" class=
=3D"styled-by-prettify">,</span><span style=3D"color: #000;" class=3D"style=
d-by-prettify"> </span><span style=3D"color: #008;" class=3D"styled-by-pret=
tify">int</span><span style=3D"color: #000;" class=3D"styled-by-prettify"> =
b</span><span style=3D"color: #660;" class=3D"styled-by-prettify">);</span>=
<span style=3D"color: #000;" class=3D"styled-by-prettify"> </span><span sty=
le=3D"color: #800;" class=3D"styled-by-prettify">// ill-formed.</span><span=
 style=3D"color: #000;" class=3D"styled-by-prettify"><br>foo2</span><span s=
tyle=3D"color: #660;" class=3D"styled-by-prettify">(</span><span style=3D"c=
olor: #066;" class=3D"styled-by-prettify">1</span><span style=3D"color: #66=
0;" class=3D"styled-by-prettify">);</span><span style=3D"color: #000;" clas=
s=3D"styled-by-prettify"> </span><span style=3D"color: #800;" class=3D"styl=
ed-by-prettify">// Call of foo(25, 1) ?</span><span style=3D"color: #000;" =
class=3D"styled-by-prettify"><br></span></div></code></div><br>The proposal=
 is to allow the use of the keyword <b>default </b>to solve the ambiguity o=
f the defaulted arguments which are not at the end of list of argument :<br=
><br><div style=3D"background-color: rgb(250, 250, 250); border-color: rgb(=
187, 187, 187); border-style: solid; border-width: 1px; overflow-wrap: brea=
k-word;" class=3D"prettyprint"><code class=3D"prettyprint"><div class=3D"su=
bprettyprint"><span style=3D"color: #008;" class=3D"styled-by-prettify">voi=
d</span><span style=3D"color: #000;" class=3D"styled-by-prettify"> foo</spa=
n><span style=3D"color: #660;" class=3D"styled-by-prettify">(</span><span s=
tyle=3D"color: #008;" class=3D"styled-by-prettify">int</span><span style=3D=
"color: #000;" class=3D"styled-by-prettify"> a </span><span style=3D"color:=
 #660;" class=3D"styled-by-prettify">=3D</span><span style=3D"color: #000;"=
 class=3D"styled-by-prettify"> </span><span style=3D"color: #066;" class=3D=
"styled-by-prettify">25</span><span style=3D"color: #660;" class=3D"styled-=
by-prettify">,</span><span style=3D"color: #000;" class=3D"styled-by-pretti=
fy"> </span><span style=3D"color: #008;" class=3D"styled-by-prettify">int</=
span><span style=3D"color: #000;" class=3D"styled-by-prettify"> b</span><sp=
an style=3D"color: #660;" class=3D"styled-by-prettify">);</span><span style=
=3D"color: #000;" class=3D"styled-by-prettify"> </span><span style=3D"color=
: #800;" class=3D"styled-by-prettify">// well-formed, the defaulted argumen=
t has no restriction</span><span style=3D"color: #000;" class=3D"styled-by-=
prettify"><br><br>foo</span><span style=3D"color: #660;" class=3D"styled-by=
-prettify">(</span><span style=3D"color: #066;" class=3D"styled-by-prettify=
">36</span><span style=3D"color: #660;" class=3D"styled-by-prettify">,</spa=
n><span style=3D"color: #000;" class=3D"styled-by-prettify"> </span><span s=
tyle=3D"color: #066;" class=3D"styled-by-prettify">15</span><span style=3D"=
color: #660;" class=3D"styled-by-prettify">);</span><span style=3D"color: #=
000;" class=3D"styled-by-prettify"> </span><span style=3D"color: #800;" cla=
ss=3D"styled-by-prettify">// well-formed, call foo with a =3D 36 and b =3D =
15.</span><span style=3D"color: #000;" class=3D"styled-by-prettify"><br>foo=
</span><span style=3D"color: #660;" class=3D"styled-by-prettify">(</span><s=
pan style=3D"color: #066;" class=3D"styled-by-prettify">12</span><span styl=
e=3D"color: #660;" class=3D"styled-by-prettify">);</span><span style=3D"col=
or: #000;" class=3D"styled-by-prettify"> </span><span style=3D"color: #800;=
" class=3D"styled-by-prettify">// ill-formed.</span><span style=3D"color: #=
000;" class=3D"styled-by-prettify"><br>foo</span><span style=3D"color: #660=
;" class=3D"styled-by-prettify">(</span><span style=3D"color: #008;" class=
=3D"styled-by-prettify">default</span><span style=3D"color: #660;" class=3D=
"styled-by-prettify">,</span><span style=3D"color: #000;" class=3D"styled-b=
y-prettify"> </span><span style=3D"color: #066;" class=3D"styled-by-prettif=
y">15</span><span style=3D"color: #660;" class=3D"styled-by-prettify">);</s=
pan><span style=3D"color: #000;" class=3D"styled-by-prettify"> </span><span=
 style=3D"color: #800;" class=3D"styled-by-prettify">// well-formed, call f=
oo with a =3D 25 and b =3D 15.</span><span style=3D"color: #000;" class=3D"=
styled-by-prettify"><br></span></div></code></div><br>Of course, the <b>def=
ault </b>keyword can be omitted if the defaulted arguments are still at the=
 end of the argument list : <br><br><div style=3D"background-color: rgb(250=
, 250, 250); border-color: rgb(187, 187, 187); border-style: solid; border-=
width: 1px; overflow-wrap: break-word;" class=3D"prettyprint"><code class=
=3D"prettyprint"><div class=3D"subprettyprint"><span style=3D"color: #008;"=
 class=3D"styled-by-prettify">void</span><span style=3D"color: #000;" class=
=3D"styled-by-prettify"> foo</span><span style=3D"color: #660;" class=3D"st=
yled-by-prettify">(</span><span style=3D"color: #008;" class=3D"styled-by-p=
rettify">int</span><span style=3D"color: #000;" class=3D"styled-by-prettify=
"> a </span><span style=3D"color: #660;" class=3D"styled-by-prettify">=3D</=
span><span style=3D"color: #000;" class=3D"styled-by-prettify"> </span><spa=
n style=3D"color: #066;" class=3D"styled-by-prettify">25</span><span style=
=3D"color: #660;" class=3D"styled-by-prettify">,</span><span style=3D"color=
: #000;" class=3D"styled-by-prettify"> </span><span style=3D"color: #008;" =
class=3D"styled-by-prettify">int</span><span style=3D"color: #000;" class=
=3D"styled-by-prettify"> b</span><span style=3D"color: #660;" class=3D"styl=
ed-by-prettify">,</span><span style=3D"color: #000;" class=3D"styled-by-pre=
ttify"> </span><span style=3D"color: #008;" class=3D"styled-by-prettify">do=
uble</span><span style=3D"color: #000;" class=3D"styled-by-prettify"> d </s=
pan><span style=3D"color: #660;" class=3D"styled-by-prettify">=3D</span><sp=
an style=3D"color: #000;" class=3D"styled-by-prettify"> </span><span style=
=3D"color: #066;" class=3D"styled-by-prettify">1.0</span><span style=3D"col=
or: #660;" class=3D"styled-by-prettify">,</span><span style=3D"color: #000;=
" class=3D"styled-by-prettify"> std</span><span style=3D"color: #660;" clas=
s=3D"styled-by-prettify">::</span><span style=3D"color: #008;" class=3D"sty=
led-by-prettify">string</span><span style=3D"color: #000;" class=3D"styled-=
by-prettify"> s </span><span style=3D"color: #660;" class=3D"styled-by-pret=
tify">=3D</span><span style=3D"color: #000;" class=3D"styled-by-prettify"> =
</span><span style=3D"color: #660;" class=3D"styled-by-prettify">{})</span>=
<span style=3D"color: #000;" class=3D"styled-by-prettify"> </span><span sty=
le=3D"color: #800;" class=3D"styled-by-prettify">// well-formed.</span><spa=
n style=3D"color: #000;" class=3D"styled-by-prettify"><br><br>foo</span><sp=
an style=3D"color: #660;" class=3D"styled-by-prettify">(</span><span style=
=3D"color: #066;" class=3D"styled-by-prettify">15</span><span style=3D"colo=
r: #660;" class=3D"styled-by-prettify">);</span><span style=3D"color: #000;=
" class=3D"styled-by-prettify"> </span><span style=3D"color: #800;" class=
=3D"styled-by-prettify">// ill-formed.</span><span style=3D"color: #000;" c=
lass=3D"styled-by-prettify"><br>foo</span><span style=3D"color: #660;" clas=
s=3D"styled-by-prettify">(</span><span style=3D"color: #066;" class=3D"styl=
ed-by-prettify">15</span><span style=3D"color: #660;" class=3D"styled-by-pr=
ettify">,</span><span style=3D"color: #000;" class=3D"styled-by-prettify"> =
</span><span style=3D"color: #066;" class=3D"styled-by-prettify">8</span><s=
pan style=3D"color: #660;" class=3D"styled-by-prettify">);</span><span styl=
e=3D"color: #000;" class=3D"styled-by-prettify"> </span><span style=3D"colo=
r: #800;" class=3D"styled-by-prettify">// well-formed, call foo with a =3D =
15, b =3D 8, d =3D 1.0 and s =3D std::string{}.</span><span style=3D"color:=
 #000;" class=3D"styled-by-prettify"><br>foo</span><span style=3D"color: #6=
60;" class=3D"styled-by-prettify">(</span><span style=3D"color: #008;" clas=
s=3D"styled-by-prettify">default</span><span style=3D"color: #660;" class=
=3D"styled-by-prettify">,</span><span style=3D"color: #000;" class=3D"style=
d-by-prettify"> </span><span style=3D"color: #066;" class=3D"styled-by-pret=
tify">8</span><span style=3D"color: #660;" class=3D"styled-by-prettify">);<=
/span><span style=3D"color: #000;" class=3D"styled-by-prettify"> </span><sp=
an style=3D"color: #800;" class=3D"styled-by-prettify">// well-formed, call=
 foo with a =3D 25, b =3D 8, d =3D 1.0 and s =3D std::string{}.</span><span=
 style=3D"color: #000;" class=3D"styled-by-prettify"><br>foo</span><span st=
yle=3D"color: #660;" class=3D"styled-by-prettify">(</span><span style=3D"co=
lor: #008;" class=3D"styled-by-prettify">default</span><span style=3D"color=
: #660;" class=3D"styled-by-prettify">,</span><span style=3D"color: #000;" =
class=3D"styled-by-prettify"> </span><span style=3D"color: #066;" class=3D"=
styled-by-prettify">8</span><span style=3D"color: #660;" class=3D"styled-by=
-prettify">,</span><span style=3D"color: #000;" class=3D"styled-by-prettify=
"> </span><span style=3D"color: #008;" class=3D"styled-by-prettify">default=
</span><span style=3D"color: #660;" class=3D"styled-by-prettify">,</span><s=
pan style=3D"color: #000;" class=3D"styled-by-prettify"> </span><span style=
=3D"color: #080;" class=3D"styled-by-prettify">&quot;Hello !&quot;</span><s=
pan style=3D"color: #000;" class=3D"styled-by-prettify">s</span><span style=
=3D"color: #660;" class=3D"styled-by-prettify">);</span><span style=3D"colo=
r: #000;" class=3D"styled-by-prettify"> </span><span style=3D"color: #800;"=
 class=3D"styled-by-prettify">// well-formed, call foo with a =3D 25, b =3D=
 8, d =3D 1.0 and s =3D &quot;Hello !&quot;.</span><span style=3D"color: #0=
00;" class=3D"styled-by-prettify"><br></span></div></code></div><br>If an a=
rgument is not specified in a function call, this argument is implicitly <b=
>default</b>. Every argument specified in a call of function corresponds to=
 the argument of the same position in the declaration of the function.<br><=
br>What do you think ?<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/43185055-e4b7-4a92-86ec-1a3167067d39%=
40isocpp.org?utm_medium=3Demail&utm_source=3Dfooter">https://groups.google.=
com/a/isocpp.org/d/msgid/std-proposals/43185055-e4b7-4a92-86ec-1a3167067d39=
%40isocpp.org</a>.<br />

------=_Part_286_1914524646.1475293071540--

------=_Part_285_1539269336.1475293071539--

.


Author: Nicol Bolas <jmckesson@gmail.com>
Date: Fri, 30 Sep 2016 21:00:16 -0700 (PDT)
Raw View
------=_Part_1291_2095305845.1475294416434
Content-Type: multipart/alternative;
 boundary="----=_Part_1292_1447544724.1475294416434"

------=_Part_1292_1447544724.1475294416434
Content-Type: text/plain; charset=UTF-8

I think it would be better if we just had designated initializers and have
such functions take a struct that has default member initializers.

For example:

struct foo_params { int a = 25; int b; double d = 1.0, std::string s = {}};

void foo(foo_params params);

foo({.a = 15, .b = 8});
foo({.b = 8});
foo({.b = 8, .s = "Hello !"s});

That makes the whole thing much easier to read on the caller's end. You
don't have random `default` tags everywhere you want to avoid naming a
parameter; you just don't name the parameter.

--
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/isocpp.org/d/msgid/std-proposals/052ab785-d97e-40bc-a115-1b5438ed8ec9%40isocpp.org.

------=_Part_1292_1447544724.1475294416434
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">I think it would be better if we just had designated initi=
alizers and have such functions take a struct that has default member initi=
alizers.<br><br>For example:<br><br><div style=3D"background-color: rgb(250=
, 250, 250); border-color: rgb(187, 187, 187); border-style: solid; border-=
width: 1px; overflow-wrap: break-word;" class=3D"prettyprint"><code class=
=3D"prettyprint"><div class=3D"subprettyprint"><span style=3D"color: #008;"=
 class=3D"styled-by-prettify">struct</span><span style=3D"color: #000;" cla=
ss=3D"styled-by-prettify"> foo_params </span><span style=3D"color: #660;" c=
lass=3D"styled-by-prettify">{</span><span style=3D"color: #000;" class=3D"s=
tyled-by-prettify"> </span><span style=3D"color: #008;" class=3D"styled-by-=
prettify">int</span><span style=3D"color: #000;" class=3D"styled-by-prettif=
y"> a </span><span style=3D"color: #660;" class=3D"styled-by-prettify">=3D<=
/span><span style=3D"color: #000;" class=3D"styled-by-prettify"> </span><sp=
an style=3D"color: #066;" class=3D"styled-by-prettify">25</span><span style=
=3D"color: #660;" class=3D"styled-by-prettify">;</span><span style=3D"color=
: #000;" class=3D"styled-by-prettify"> </span><span style=3D"color: #008;" =
class=3D"styled-by-prettify">int</span><span style=3D"color: #000;" class=
=3D"styled-by-prettify"> b</span><span style=3D"color: #660;" class=3D"styl=
ed-by-prettify">;</span><span style=3D"color: #000;" class=3D"styled-by-pre=
ttify"> </span><span style=3D"color: #008;" class=3D"styled-by-prettify">do=
uble</span><span style=3D"color: #000;" class=3D"styled-by-prettify"> d </s=
pan><span style=3D"color: #660;" class=3D"styled-by-prettify">=3D</span><sp=
an style=3D"color: #000;" class=3D"styled-by-prettify"> </span><span style=
=3D"color: #066;" class=3D"styled-by-prettify">1.0</span><span style=3D"col=
or: #660;" class=3D"styled-by-prettify">,</span><span style=3D"color: #000;=
" class=3D"styled-by-prettify"> std</span><span style=3D"color: #660;" clas=
s=3D"styled-by-prettify">::</span><span style=3D"color: #008;" class=3D"sty=
led-by-prettify">string</span><span style=3D"color: #000;" class=3D"styled-=
by-prettify"> s </span><span style=3D"color: #660;" class=3D"styled-by-pret=
tify">=3D</span><span style=3D"color: #000;" class=3D"styled-by-prettify"> =
</span><span style=3D"color: #660;" class=3D"styled-by-prettify">{}};</span=
><span style=3D"color: #000;" class=3D"styled-by-prettify"><br><br></span><=
span style=3D"color: #008;" class=3D"styled-by-prettify">void</span><span s=
tyle=3D"color: #000;" class=3D"styled-by-prettify"> foo</span><span style=
=3D"color: #660;" class=3D"styled-by-prettify">(</span><span style=3D"color=
: #000;" class=3D"styled-by-prettify">foo_params </span><span style=3D"colo=
r: #008;" class=3D"styled-by-prettify">params</span><span style=3D"color: #=
660;" class=3D"styled-by-prettify">);</span><span style=3D"color: #000;" cl=
ass=3D"styled-by-prettify"><br><br>foo</span><span style=3D"color: #660;" c=
lass=3D"styled-by-prettify">({.</span><span style=3D"color: #000;" class=3D=
"styled-by-prettify">a </span><span style=3D"color: #660;" class=3D"styled-=
by-prettify">=3D</span><span style=3D"color: #000;" class=3D"styled-by-pret=
tify"> </span><span style=3D"color: #066;" class=3D"styled-by-prettify">15<=
/span><span style=3D"color: #660;" class=3D"styled-by-prettify">,</span><sp=
an style=3D"color: #000;" class=3D"styled-by-prettify"> </span><span style=
=3D"color: #660;" class=3D"styled-by-prettify">.</span><span style=3D"color=
: #000;" class=3D"styled-by-prettify">b </span><span style=3D"color: #660;"=
 class=3D"styled-by-prettify">=3D</span><span style=3D"color: #000;" class=
=3D"styled-by-prettify"> </span><span style=3D"color: #066;" class=3D"style=
d-by-prettify">8</span><span style=3D"color: #660;" class=3D"styled-by-pret=
tify">});</span><span style=3D"color: #000;" class=3D"styled-by-prettify"><=
br>foo</span><span style=3D"color: #660;" class=3D"styled-by-prettify">({.<=
/span><span style=3D"color: #000;" class=3D"styled-by-prettify">b </span><s=
pan style=3D"color: #660;" class=3D"styled-by-prettify">=3D</span><span sty=
le=3D"color: #000;" class=3D"styled-by-prettify"> </span><span style=3D"col=
or: #066;" class=3D"styled-by-prettify">8</span><span style=3D"color: #660;=
" class=3D"styled-by-prettify">});</span><span style=3D"color: #000;" class=
=3D"styled-by-prettify"><br>foo</span><span style=3D"color: #660;" class=3D=
"styled-by-prettify">({.</span><span style=3D"color: #000;" class=3D"styled=
-by-prettify">b </span><span style=3D"color: #660;" class=3D"styled-by-pret=
tify">=3D</span><span style=3D"color: #000;" class=3D"styled-by-prettify"> =
</span><span style=3D"color: #066;" class=3D"styled-by-prettify">8</span><s=
pan style=3D"color: #660;" class=3D"styled-by-prettify">,</span><span style=
=3D"color: #000;" class=3D"styled-by-prettify"> </span><span style=3D"color=
: #660;" class=3D"styled-by-prettify">.</span><span style=3D"color: #000;" =
class=3D"styled-by-prettify">s </span><span style=3D"color: #660;" class=3D=
"styled-by-prettify">=3D</span><span style=3D"color: #000;" class=3D"styled=
-by-prettify"> </span><span style=3D"color: #080;" class=3D"styled-by-prett=
ify">&quot;Hello !&quot;</span><span style=3D"color: #000;" class=3D"styled=
-by-prettify">s</span><span style=3D"color: #660;" class=3D"styled-by-prett=
ify">});</span></div></code></div><br>That makes the whole thing much easie=
r to read on the caller&#39;s end. You don&#39;t have random `default` tags=
 everywhere you want to avoid naming a parameter; you just don&#39;t name t=
he parameter.<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/052ab785-d97e-40bc-a115-1b5438ed8ec9%=
40isocpp.org?utm_medium=3Demail&utm_source=3Dfooter">https://groups.google.=
com/a/isocpp.org/d/msgid/std-proposals/052ab785-d97e-40bc-a115-1b5438ed8ec9=
%40isocpp.org</a>.<br />

------=_Part_1292_1447544724.1475294416434--

------=_Part_1291_2095305845.1475294416434--

.


Author: "D. B." <db0451@gmail.com>
Date: Sat, 1 Oct 2016 07:56:48 +0100
Raw View
--089e01681c7af6af35053dc83650
Content-Type: text/plain; charset=UTF-8

On Sat, Oct 1, 2016 at 5:00 AM, Nicol Bolas <jmckesson@gmail.com> wrote:

> I think it would be better if we just had designated initializers and have
> such functions take a struct that has default member initializers.
>

....much easier to read on the caller's end. You don't have random `default`
> tags everywhere you want to avoid naming a parameter; you just don't name
> the parameter.
>

I think designated initialisers would be good (if presumably fraught with
difficulty to implement, else why don't we have them yet?), and I think
having to pile defaults into a function call would be bad... but I don't
think the one is the solution for the other. Though sure, it could work.

Rather, though, I think supporting named arguments is the way to do this.
No need to pass a struct, just call the function while ensuring you've
provided a named argument for every one that wasn't declared defaultable.
But again, presumably there are good reasons this doesn't exist yet.

--
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/isocpp.org/d/msgid/std-proposals/CACGiwhFzsqRJrL8xKHbB9Tk8TVK96tY0b-%3D3pqfrZoiB10KL6g%40mail.gmail.com.

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

<div dir=3D"ltr"><div class=3D"gmail_extra"><div class=3D"gmail_quote">On S=
at, Oct 1, 2016 at 5:00 AM, Nicol Bolas <span dir=3D"ltr">&lt;<a href=3D"ma=
ilto:jmckesson@gmail.com" target=3D"_blank">jmckesson@gmail.com</a>&gt;</sp=
an> wrote:<br><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;=
border-left:1px #ccc solid;padding-left:1ex"><div>I think it would be bette=
r if we just had designated initializers and have such functions take a str=
uct that has default member initializers.=C2=A0</div></blockquote><div><br>=
</div><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-l=
eft:1px #ccc solid;padding-left:1ex"><div dir=3D"ltr">...much easier to rea=
d on the caller&#39;s end. You don&#39;t have random `default` tags everywh=
ere you want to avoid naming a parameter; you just don&#39;t name the param=
eter.<br></div></blockquote><div><br></div><div>I think designated initiali=
sers would be good (if presumably fraught with difficulty to implement, els=
e why don&#39;t we have them yet?), and I think having to pile defaults int=
o a function call would be bad... but I don&#39;t think the one is the solu=
tion for the other. Though sure, it could work.<br><br></div><div>Rather, t=
hough, I think supporting named arguments is the way to do this. No need to=
 pass a struct, just call the function while ensuring you&#39;ve provided a=
 named argument for every one that wasn&#39;t declared defaultable. But aga=
in, presumably there are good reasons this doesn&#39;t exist yet.<br>=C2=A0=
<br></div></div></div></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/CACGiwhFzsqRJrL8xKHbB9Tk8TVK96tY0b-%3=
D3pqfrZoiB10KL6g%40mail.gmail.com?utm_medium=3Demail&utm_source=3Dfooter">h=
ttps://groups.google.com/a/isocpp.org/d/msgid/std-proposals/CACGiwhFzsqRJrL=
8xKHbB9Tk8TVK96tY0b-%3D3pqfrZoiB10KL6g%40mail.gmail.com</a>.<br />

--089e01681c7af6af35053dc83650--

.


Author: TONGARI J <tongari95@gmail.com>
Date: Sat, 1 Oct 2016 16:10:55 +0800
Raw View
--001a113519ba1549c8053dc94069
Content-Type: text/plain; charset=UTF-8

2016-10-01 14:56 GMT+08:00 D. B. <db0451@gmail.com>:

> On Sat, Oct 1, 2016 at 5:00 AM, Nicol Bolas <jmckesson@gmail.com> wrote:
>
>> I think it would be better if we just had designated initializers and
>> have such functions take a struct that has default member initializers.
>>
>
> ...much easier to read on the caller's end. You don't have random
>> `default` tags everywhere you want to avoid naming a parameter; you just
>> don't name the parameter.
>>
>
> I think designated initialisers would be good (if presumably fraught with
> difficulty to implement, else why don't we have them yet?), and I think
> having to pile defaults into a function call would be bad... but I don't
> think the one is the solution for the other. Though sure, it could work.
>

Actually a restricted form of designated initializers is already accepted
(See P0329R0).


> Rather, though, I think supporting named arguments is the way to do this.
> No need to pass a struct, just call the function while ensuring you've
> provided a named argument for every one that wasn't declared defaultable.
> But again, presumably there are good reasons this doesn't exist yet.
>

I'm also in favor of this, see:
https://groups.google.com/a/isocpp.org/forum/#!topic/std-proposals/gtGWEUtATU4

And I've added template support for designators since then.

--
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/isocpp.org/d/msgid/std-proposals/CANCwVhfrVmMtDHsjz3ugezmBdYt%3DdECk8909Y%2B4vwaKyyWp97Q%40mail.gmail.com.

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

<div dir=3D"ltr"><div class=3D"gmail_extra"><div class=3D"gmail_quote">2016=
-10-01 14:56 GMT+08:00 D. B. <span dir=3D"ltr">&lt;<a href=3D"mailto:db0451=
@gmail.com" target=3D"_blank">db0451@gmail.com</a>&gt;</span>:<br><blockquo=
te class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px =
solid rgb(204,204,204);padding-left:1ex"><div dir=3D"ltr"><div class=3D"gma=
il_extra"><div class=3D"gmail_quote"><span class=3D"gmail-">On Sat, Oct 1, =
2016 at 5:00 AM, Nicol Bolas <span dir=3D"ltr">&lt;<a href=3D"mailto:jmckes=
son@gmail.com" target=3D"_blank">jmckesson@gmail.com</a>&gt;</span> wrote:<=
br><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;bord=
er-left:1px solid rgb(204,204,204);padding-left:1ex"><div>I think it would =
be better if we just had designated initializers and have such functions ta=
ke a struct that has default member initializers.=C2=A0</div></blockquote><=
div><br></div></span><blockquote class=3D"gmail_quote" style=3D"margin:0px =
0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div=
 dir=3D"ltr">...much easier to read on the caller&#39;s end. You don&#39;t =
have random `default` tags everywhere you want to avoid naming a parameter;=
 you just don&#39;t name the parameter.<br></div></blockquote><div><br></di=
v><div>I think designated initialisers would be good (if presumably fraught=
 with difficulty to implement, else why don&#39;t we have them yet?), and I=
 think having to pile defaults into a function call would be bad... but I d=
on&#39;t think the one is the solution for the other. Though sure, it could=
 work.<br></div></div></div></div></blockquote><br>Actually a restricted fo=
rm of designated initializers is already accepted (See P0329R0).<div>=C2=A0=
</div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;b=
order-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir=3D"ltr"><d=
iv class=3D"gmail_extra"><div class=3D"gmail_quote"><div></div><div>Rather,=
 though, I think supporting named arguments is the way to do this. No need =
to pass a struct, just call the function while ensuring you&#39;ve provided=
 a named argument for every one that wasn&#39;t declared defaultable. But a=
gain, presumably there are good reasons this doesn&#39;t exist yet.<br></di=
v></div></div></div></blockquote><div><br></div><div>I&#39;m also in favor =
of this, see:</div><div><a href=3D"https://groups.google.com/a/isocpp.org/f=
orum/#!topic/std-proposals/gtGWEUtATU4">https://groups.google.com/a/isocpp.=
org/forum/#!topic/std-proposals/gtGWEUtATU4</a></div><div><br></div><div>An=
d I&#39;ve added template support for designators since then.</div></div></=
div></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/CANCwVhfrVmMtDHsjz3ugezmBdYt%3DdECk89=
09Y%2B4vwaKyyWp97Q%40mail.gmail.com?utm_medium=3Demail&utm_source=3Dfooter"=
>https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/CANCwVhfrVmMt=
DHsjz3ugezmBdYt%3DdECk8909Y%2B4vwaKyyWp97Q%40mail.gmail.com</a>.<br />

--001a113519ba1549c8053dc94069--

.


Author: "D. B." <db0451@gmail.com>
Date: Sat, 1 Oct 2016 09:51:49 +0100
Raw View
--001a114b2fc451e4e7053dc9d211
Content-Type: text/plain; charset=UTF-8

On Sat, Oct 1, 2016 at 9:10 AM, TONGARI J <tongari95@gmail.com> wrote:

>
> Actually a restricted form of designated initializers is already accepted
> (See P0329R0).
>
> I'm also in favor of [named arguments], see:
> https://groups.google.com/a/isocpp.org/forum/#!topic/std-
> proposals/gtGWEUtATU4
>
> And I've added template support for designators since then.
>
> Thanks for the directions. I begin to see why Nicol suggested just passing
a struct with the (now supported, yay!) designated initialisers, as it
would at least avoid a lot of the philosophical questions raised by named
arguments. But I wish luck to you and anyone else who might be able to get
a workable form of named args into the language - a large challenge but
possibly a very rewarding one.

--
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/isocpp.org/d/msgid/std-proposals/CACGiwhF%3DwjuKunxFz0b3Dy3ihfYTnV%3D9tqkfQVMNGGRF0f2uPA%40mail.gmail.com.

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

<div dir=3D"ltr"><div class=3D"gmail_extra"><div class=3D"gmail_quote">On S=
at, Oct 1, 2016 at 9:10 AM, TONGARI J <span dir=3D"ltr">&lt;<a href=3D"mail=
to:tongari95@gmail.com" target=3D"_blank">tongari95@gmail.com</a>&gt;</span=
> wrote:<br><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;bo=
rder-left:1px #ccc solid;padding-left:1ex"><div dir=3D"ltr"><div class=3D"g=
mail_extra"><span class=3D""></span><br><span class=3D""></span><div class=
=3D"gmail_quote">Actually a restricted form of designated initializers is a=
lready accepted (See P0329R0).<span class=3D""><div><br></div></span><div>I=
&#39;m also in favor of [named arguments], see:</div><div><a href=3D"https:=
//groups.google.com/a/isocpp.org/forum/#!topic/std-proposals/gtGWEUtATU4" t=
arget=3D"_blank">https://groups.google.com/a/<wbr>isocpp.org/forum/#!topic/=
std-<wbr>proposals/gtGWEUtATU4</a></div><div><br></div><div>And I&#39;ve ad=
ded template support for designators since then.</div></div></div></div><sp=
an class=3D"">

<p></p>

</span></blockquote><div>Thanks for the directions. I begin to see why Nico=
l suggested just passing a struct with the (now supported, yay!) designated=
 initialisers, as it would at least avoid a lot of the philosophical questi=
ons raised by named arguments. But I wish luck to you and anyone else who m=
ight be able to get a workable form of named args into the language - a lar=
ge challenge but possibly a very rewarding one.<br></div></div></div></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/CACGiwhF%3DwjuKunxFz0b3Dy3ihfYTnV%3D9=
tqkfQVMNGGRF0f2uPA%40mail.gmail.com?utm_medium=3Demail&utm_source=3Dfooter"=
>https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/CACGiwhF%3Dwj=
uKunxFz0b3Dy3ihfYTnV%3D9tqkfQVMNGGRF0f2uPA%40mail.gmail.com</a>.<br />

--001a114b2fc451e4e7053dc9d211--

.


Author: "dgutson ." <danielgutson@gmail.com>
Date: Sat, 1 Oct 2016 09:02:28 -0300
Raw View
--94eb2c05a152343faa053dcc7c34
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

El 1/10/2016 0:37, "Etienne Boespflug" <etienne.boespflug@gmail.com>
escribi=C3=B3:
>
> C++ chose a simple rule to support default arguments : the defaulted
arguments have to be at the end of the argument list :
>
> void foo(int a, double d =3D 1.0, std::string s =3D {}); // well-formed
>
> foo(1); // Call foo with (1, 1.0, std::string{}) for arguments.
>
> void foo2(int a =3D 25, int b); // ill-formed.
> foo2(1); // Call of foo(25, 1) ?
>
> The proposal is to allow the use of the keyword default to solve the
ambiguity of the defaulted arguments which are not at the end of list of
argument :

From my previous life:
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2003/n1466.pdf

(See the date).

When asked, Bjarne said "Nahh...don't complicate default parameters. We
have overloading instead.".

Up to you to still pursue this.

>
> void foo(int a =3D 25, int b); // well-formed, the defaulted argument has
no restriction
>
> foo(36, 15); // well-formed, call foo with a =3D 36 and b =3D 15.
> foo(12); // ill-formed.
> foo(default, 15); // well-formed, call foo with a =3D 25 and b =3D 15.
>
> Of course, the default keyword can be omitted if the defaulted arguments
are still at the end of the argument list :
>
> void foo(int a =3D 25, int b, double d =3D 1.0, std::string s =3D {}) //
well-formed.
>
> foo(15); // ill-formed.
> foo(15, 8); // well-formed, call foo with a =3D 15, b =3D 8, d =3D 1.0 an=
d s =3D
std::string{}.
> foo(default, 8); // well-formed, call foo with a =3D 25, b =3D 8, d =3D 1=
..0 and
s =3D std::string{}.
> foo(default, 8, default, "Hello !"s); // well-formed, call foo with a =3D
25, b =3D 8, d =3D 1.0 and s =3D "Hello !".
>
> If an argument is not specified in a function call, this argument is
implicitly default. Every argument specified in a call of function
corresponds to the argument of the same position in the declaration of the
function.
>
> What do you think ?
>
> --
> 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/isocpp.org/d/msgid/std-proposals/43185055-e4b7-=
4a92-86ec-1a3167067d39%40isocpp.org
..

--=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/CAFdMc-0oGbirtQM74Cj8odz4Su7KTD2F%2BTKE%3DxHNTMw=
%2B4W7FSQ%40mail.gmail.com.

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

<p dir=3D"ltr"></p>
<p dir=3D"ltr">El 1/10/2016 0:37, &quot;Etienne Boespflug&quot; &lt;<a href=
=3D"mailto:etienne.boespflug@gmail.com">etienne.boespflug@gmail.com</a>&gt;=
 escribi=C3=B3:<br>
&gt;<br>
&gt; C++ chose a simple rule to support default arguments : the defaulted a=
rguments have to be at the end of the argument list : <br>
&gt;<br>
&gt; void foo(int a, double d =3D 1.0, std::string s =3D {}); // well-forme=
d<br>
&gt;<br>
&gt; foo(1); // Call foo with (1, 1.0, std::string{}) for arguments.<br>
&gt;<br>
&gt; void foo2(int a =3D 25, int b); // ill-formed.<br>
&gt; foo2(1); // Call of foo(25, 1) ?<br>
&gt;<br>
&gt; The proposal is to allow the use of the keyword default to solve the a=
mbiguity of the defaulted arguments which are not at the end of list of arg=
ument :</p>
<p dir=3D"ltr">From my previous life: <a href=3D"http://www.open-std.org/jt=
c1/sc22/wg21/docs/papers/2003/n1466.pdf">http://www.open-std.org/jtc1/sc22/=
wg21/docs/papers/2003/n1466.pdf</a></p>
<p dir=3D"ltr">(See the date).</p>
<p dir=3D"ltr">When asked, Bjarne said &quot;Nahh...don&#39;t complicate de=
fault parameters. We have overloading instead.&quot;.</p>
<p dir=3D"ltr">Up to you to still pursue this. </p>
<p dir=3D"ltr">&gt;<br>
&gt; void foo(int a =3D 25, int b); // well-formed, the defaulted argument =
has no restriction<br>
&gt;<br>
&gt; foo(36, 15); // well-formed, call foo with a =3D 36 and b =3D 15.<br>
&gt; foo(12); // ill-formed.<br>
&gt; foo(default, 15); // well-formed, call foo with a =3D 25 and b =3D 15.=
<br>
&gt;<br>
&gt; Of course, the default keyword can be omitted if the defaulted argumen=
ts are still at the end of the argument list : <br>
&gt;<br>
&gt; void foo(int a =3D 25, int b, double d =3D 1.0, std::string s =3D {}) =
// well-formed.<br>
&gt;<br>
&gt; foo(15); // ill-formed.<br>
&gt; foo(15, 8); // well-formed, call foo with a =3D 15, b =3D 8, d =3D 1.0=
 and s =3D std::string{}.<br>
&gt; foo(default, 8); // well-formed, call foo with a =3D 25, b =3D 8, d =
=3D 1.0 and s =3D std::string{}.<br>
&gt; foo(default, 8, default, &quot;Hello !&quot;s); // well-formed, call f=
oo with a =3D 25, b =3D 8, d =3D 1.0 and s =3D &quot;Hello !&quot;.<br>
&gt;<br>
&gt; If an argument is not specified in a function call, this argument is i=
mplicitly default. Every argument specified in a call of function correspon=
ds to the argument of the same position in the declaration of the function.=
<br>
&gt;<br>
&gt; What do you think ?<br>
&gt;<br>
&gt; -- <br>
&gt; You received this message because you are subscribed to the Google Gro=
ups &quot;ISO C++ Standard - Future Proposals&quot; group.<br>
&gt; To unsubscribe from this group and stop receiving emails from it, send=
 an email to <a href=3D"mailto:std-proposals%2Bunsubscribe@isocpp.org">std-=
proposals+unsubscribe@isocpp.org</a>.<br>
&gt; To post to this group, send email to <a href=3D"mailto:std-proposals@i=
socpp.org">std-proposals@isocpp.org</a>.<br>
&gt; To view this discussion on the web visit <a href=3D"https://groups.goo=
gle.com/a/isocpp.org/d/msgid/std-proposals/43185055-e4b7-4a92-86ec-1a316706=
7d39%40isocpp.org">https://groups.google.com/a/isocpp.org/d/msgid/std-propo=
sals/43185055-e4b7-4a92-86ec-1a3167067d39%40isocpp.org</a>.<br></p>

<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/CAFdMc-0oGbirtQM74Cj8odz4Su7KTD2F%2BT=
KE%3DxHNTMw%2B4W7FSQ%40mail.gmail.com?utm_medium=3Demail&utm_source=3Dfoote=
r">https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/CAFdMc-0oGb=
irtQM74Cj8odz4Su7KTD2F%2BTKE%3DxHNTMw%2B4W7FSQ%40mail.gmail.com</a>.<br />

--94eb2c05a152343faa053dcc7c34--

.


Author: Nicol Bolas <jmckesson@gmail.com>
Date: Sat, 1 Oct 2016 08:47:07 -0700 (PDT)
Raw View
------=_Part_301_1869715562.1475336827872
Content-Type: multipart/alternative;
 boundary="----=_Part_302_737483136.1475336827872"

------=_Part_302_737483136.1475336827872
Content-Type: text/plain; charset=UTF-8

On Saturday, October 1, 2016 at 4:10:58 AM UTC-4, TONGARI J wrote:
>
> 2016-10-01 14:56 GMT+08:00 D. B. <db0...@gmail.com <javascript:>>:
>
>> On Sat, Oct 1, 2016 at 5:00 AM, Nicol Bolas <jmck...@gmail.com
>> <javascript:>> wrote:
>>
>>> I think it would be better if we just had designated initializers and
>>> have such functions take a struct that has default member initializers.
>>>
>>
>> ...much easier to read on the caller's end. You don't have random
>>> `default` tags everywhere you want to avoid naming a parameter; you just
>>> don't name the parameter.
>>>
>>
>> I think designated initialisers would be good (if presumably fraught with
>> difficulty to implement, else why don't we have them yet?), and I think
>> having to pile defaults into a function call would be bad... but I don't
>> think the one is the solution for the other. Though sure, it could work.
>>
>
> Actually a restricted form of designated initializers is already accepted
> (See P0329R0).
>

No, it hasn't been accepted yet; it's just a proposal.

--
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/isocpp.org/d/msgid/std-proposals/11064450-2fad-43f0-a045-23d4519c0c0d%40isocpp.org.

------=_Part_302_737483136.1475336827872
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">On Saturday, October 1, 2016 at 4:10:58 AM UTC-4, TONGARI =
J wrote:<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"><div>=
<div class=3D"gmail_quote">2016-10-01 14:56 GMT+08:00 D. B. <span dir=3D"lt=
r">&lt;<a href=3D"javascript:" target=3D"_blank" gdf-obfuscated-mailto=3D"S=
AsU9q4qBgAJ" rel=3D"nofollow" onmousedown=3D"this.href=3D&#39;javascript:&#=
39;;return true;" onclick=3D"this.href=3D&#39;javascript:&#39;;return true;=
">db0...@gmail.com</a>&gt;</span>:<br><blockquote class=3D"gmail_quote" sty=
le=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);paddi=
ng-left:1ex"><div dir=3D"ltr"><div><div class=3D"gmail_quote"><span>On Sat,=
 Oct 1, 2016 at 5:00 AM, Nicol Bolas <span dir=3D"ltr">&lt;<a href=3D"javas=
cript:" target=3D"_blank" gdf-obfuscated-mailto=3D"SAsU9q4qBgAJ" rel=3D"nof=
ollow" onmousedown=3D"this.href=3D&#39;javascript:&#39;;return true;" oncli=
ck=3D"this.href=3D&#39;javascript:&#39;;return true;">jmck...@gmail.com</a>=
&gt;</span> wrote:<br><blockquote class=3D"gmail_quote" style=3D"margin:0px=
 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><di=
v>I think it would be better if we just had designated initializers and hav=
e such functions take a struct that has default member initializers.=C2=A0<=
/div></blockquote><div><br></div></span><blockquote class=3D"gmail_quote" s=
tyle=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);pad=
ding-left:1ex"><div dir=3D"ltr">...much easier to read on the caller&#39;s =
end. You don&#39;t have random `default` tags everywhere you want to avoid =
naming a parameter; you just don&#39;t name the parameter.<br></div></block=
quote><div><br></div><div>I think designated initialisers would be good (if=
 presumably fraught with difficulty to implement, else why don&#39;t we hav=
e them yet?), and I think having to pile defaults into a function call woul=
d be bad... but I don&#39;t think the one is the solution for the other. Th=
ough sure, it could work.<br></div></div></div></div></blockquote><br>Actua=
lly a restricted form of designated initializers is already accepted (See P=
0329R0).</div></div></div></blockquote><div><br>No, it hasn&#39;t been acce=
pted yet; it&#39;s just a proposal.</div></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/11064450-2fad-43f0-a045-23d4519c0c0d%=
40isocpp.org?utm_medium=3Demail&utm_source=3Dfooter">https://groups.google.=
com/a/isocpp.org/d/msgid/std-proposals/11064450-2fad-43f0-a045-23d4519c0c0d=
%40isocpp.org</a>.<br />

------=_Part_302_737483136.1475336827872--

------=_Part_301_1869715562.1475336827872--

.


Author: "D. B." <db0451@gmail.com>
Date: Sat, 1 Oct 2016 16:54:14 +0100
Raw View
--001a1144288a028878053dcfb9e7
Content-Type: text/plain; charset=UTF-8

The more I think about designated initialisers in C++, the more brittle it
seems (including that proposal's requirement that order of designation must
match declaration). Named arguments are like that, but multiplied many
times.

--
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/isocpp.org/d/msgid/std-proposals/CACGiwhFbiOqY3KRCGa66AGeDqQi-t-o92R%2BDWaxfNdJjwP8O%2BQ%40mail.gmail.com.

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

<div dir=3D"ltr"><div>The more I think about designated initialisers in C++=
, the more brittle it seems (including that proposal&#39;s requirement that=
 order of designation must match declaration). Named arguments are like tha=
t, but multiplied many times.<br><br></div></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/CACGiwhFbiOqY3KRCGa66AGeDqQi-t-o92R%2=
BDWaxfNdJjwP8O%2BQ%40mail.gmail.com?utm_medium=3Demail&utm_source=3Dfooter"=
>https://groups.google.com/a/isocpp.org/d/msgid/std-proposals/CACGiwhFbiOqY=
3KRCGa66AGeDqQi-t-o92R%2BDWaxfNdJjwP8O%2BQ%40mail.gmail.com</a>.<br />

--001a1144288a028878053dcfb9e7--

.


Author: TONGARI J <tongari95@gmail.com>
Date: Sun, 2 Oct 2016 12:17:11 +0800
Raw View
--001a11450d9e04ecd2053dda1ac2
Content-Type: text/plain; charset=UTF-8

2016-10-01 23:47 GMT+08:00 Nicol Bolas <jmckesson@gmail.com>:

> On Saturday, October 1, 2016 at 4:10:58 AM UTC-4, TONGARI J wrote:
>>
>> 2016-10-01 14:56 GMT+08:00 D. B. <db0...@gmail.com>:
>>
>>> On Sat, Oct 1, 2016 at 5:00 AM, Nicol Bolas <jmck...@gmail.com> wrote:
>>>
>>>> I think it would be better if we just had designated initializers and
>>>> have such functions take a struct that has default member initializers.
>>>>
>>>
>>> ...much easier to read on the caller's end. You don't have random
>>>> `default` tags everywhere you want to avoid naming a parameter; you just
>>>> don't name the parameter.
>>>>
>>>
>>> I think designated initialisers would be good (if presumably fraught
>>> with difficulty to implement, else why don't we have them yet?), and I
>>> think having to pile defaults into a function call would be bad... but I
>>> don't think the one is the solution for the other. Though sure, it could
>>> work.
>>>
>>
>> Actually a restricted form of designated initializers is already accepted
>> (See P0329R0).
>>
>
> No, it hasn't been accepted yet; it's just a proposal.
>

See Botond's trip report about the accepted proposals:
https://botondballo.wordpress.com/2016/07/06/trip-report-c-standards-meeting-in-oulu-june-2016/

--
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/isocpp.org/d/msgid/std-proposals/CANCwVhesizYw9fGFPGgVk6014euLf5GLAUqrkZn1AwRyYB2C4Q%40mail.gmail.com.

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

<div dir=3D"ltr"><div class=3D"gmail_extra"><div class=3D"gmail_quote">2016=
-10-01 23:47 GMT+08:00 Nicol Bolas <span dir=3D"ltr">&lt;<a href=3D"mailto:=
jmckesson@gmail.com" target=3D"_blank">jmckesson@gmail.com</a>&gt;</span>:<=
br><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;bord=
er-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir=3D"ltr">On Sa=
turday, October 1, 2016 at 4:10:58 AM UTC-4, TONGARI J wrote:<blockquote cl=
ass=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid=
 rgb(204,204,204);padding-left:1ex"><div dir=3D"ltr"><div><div class=3D"gma=
il_quote">2016-10-01 14:56 GMT+08:00 D. B. <span dir=3D"ltr">&lt;<a rel=3D"=
nofollow">db0...@gmail.com</a>&gt;</span>:<span class=3D"gmail-"><br><block=
quote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1=
px solid rgb(204,204,204);padding-left:1ex"><div dir=3D"ltr"><div><div clas=
s=3D"gmail_quote"><span>On Sat, Oct 1, 2016 at 5:00 AM, Nicol Bolas <span d=
ir=3D"ltr">&lt;<a rel=3D"nofollow">jmck...@gmail.com</a>&gt;</span> wrote:<=
br><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;bord=
er-left:1px solid rgb(204,204,204);padding-left:1ex"><div>I think it would =
be better if we just had designated initializers and have such functions ta=
ke a struct that has default member initializers.=C2=A0</div></blockquote><=
div><br></div></span><blockquote class=3D"gmail_quote" style=3D"margin:0px =
0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div=
 dir=3D"ltr">...much easier to read on the caller&#39;s end. You don&#39;t =
have random `default` tags everywhere you want to avoid naming a parameter;=
 you just don&#39;t name the parameter.<br></div></blockquote><div><br></di=
v><div>I think designated initialisers would be good (if presumably fraught=
 with difficulty to implement, else why don&#39;t we have them yet?), and I=
 think having to pile defaults into a function call would be bad... but I d=
on&#39;t think the one is the solution for the other. Though sure, it could=
 work.<br></div></div></div></div></blockquote><br>Actually a restricted fo=
rm of designated initializers is already accepted (See P0329R0).</span></di=
v></div></div></blockquote><div><br>No, it hasn&#39;t been accepted yet; it=
&#39;s just a proposal.</div></div></blockquote><br>See Botond&#39;s trip r=
eport about the accepted proposals:<br><a href=3D"https://botondballo.wordp=
ress.com/2016/07/06/trip-report-c-standards-meeting-in-oulu-june-2016/">htt=
ps://botondballo.wordpress.com/2016/07/06/trip-report-c-standards-meeting-i=
n-oulu-june-2016/</a></div></div></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/CANCwVhesizYw9fGFPGgVk6014euLf5GLAUqr=
kZn1AwRyYB2C4Q%40mail.gmail.com?utm_medium=3Demail&utm_source=3Dfooter">htt=
ps://groups.google.com/a/isocpp.org/d/msgid/std-proposals/CANCwVhesizYw9fGF=
PGgVk6014euLf5GLAUqrkZn1AwRyYB2C4Q%40mail.gmail.com</a>.<br />

--001a11450d9e04ecd2053dda1ac2--

.


Author: Nicol Bolas <jmckesson@gmail.com>
Date: Sat, 1 Oct 2016 22:40:03 -0700 (PDT)
Raw View
------=_Part_927_1316806270.1475386804096
Content-Type: multipart/alternative;
 boundary="----=_Part_928_1691546037.1475386804096"

------=_Part_928_1691546037.1475386804096
Content-Type: text/plain; charset=UTF-8

On Sunday, October 2, 2016 at 12:17:13 AM UTC-4, TONGARI J wrote:
>
> 2016-10-01 23:47 GMT+08:00 Nicol Bolas <jmck...@gmail.com <javascript:>>:
>
>> On Saturday, October 1, 2016 at 4:10:58 AM UTC-4, TONGARI J wrote:
>>>
>>> 2016-10-01 14:56 GMT+08:00 D. B. <db0...@gmail.com>:
>>>
>>>> On Sat, Oct 1, 2016 at 5:00 AM, Nicol Bolas <jmck...@gmail.com> wrote:
>>>>
>>>>> I think it would be better if we just had designated initializers and
>>>>> have such functions take a struct that has default member initializers.
>>>>>
>>>>
>>>> ...much easier to read on the caller's end. You don't have random
>>>>> `default` tags everywhere you want to avoid naming a parameter; you just
>>>>> don't name the parameter.
>>>>>
>>>>
>>>> I think designated initialisers would be good (if presumably fraught
>>>> with difficulty to implement, else why don't we have them yet?), and I
>>>> think having to pile defaults into a function call would be bad... but I
>>>> don't think the one is the solution for the other. Though sure, it could
>>>> work.
>>>>
>>>
>>> Actually a restricted form of designated initializers is already
>>> accepted (See P0329R0).
>>>
>>
>> No, it hasn't been accepted yet; it's just a proposal.
>>
>
> See Botond's trip report about the accepted proposals:
>
> https://botondballo.wordpress.com/2016/07/06/trip-report-c-standards-meeting-in-oulu-june-2016/
>

He wrote one for Oulu? I always use isocpp.org to keep up with his trip
reports, and it was never posted there.

On the plus side, I'm glad to see the committee give the nod to designated
initializers, even if it's not in the most perfect form.

--
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/isocpp.org/d/msgid/std-proposals/fa00764d-5dd4-4b45-8e32-b614339616f7%40isocpp.org.

------=_Part_928_1691546037.1475386804096
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">On Sunday, October 2, 2016 at 12:17:13 AM UTC-4, TONGARI J=
 wrote:<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"><div><=
div class=3D"gmail_quote">2016-10-01 23:47 GMT+08:00 Nicol Bolas <span dir=
=3D"ltr">&lt;<a href=3D"javascript:" target=3D"_blank" gdf-obfuscated-mailt=
o=3D"vb7EP4JsBgAJ" rel=3D"nofollow" onmousedown=3D"this.href=3D&#39;javascr=
ipt:&#39;;return true;" onclick=3D"this.href=3D&#39;javascript:&#39;;return=
 true;">jmck...@gmail.com</a>&gt;</span>:<br><blockquote class=3D"gmail_quo=
te" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204=
);padding-left:1ex"><div dir=3D"ltr">On Saturday, October 1, 2016 at 4:10:5=
8 AM UTC-4, TONGARI J wrote:<blockquote class=3D"gmail_quote" style=3D"marg=
in:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1e=
x"><div dir=3D"ltr"><div><div class=3D"gmail_quote">2016-10-01 14:56 GMT+08=
:00 D. B. <span dir=3D"ltr">&lt;<a rel=3D"nofollow">db0...@gmail.com</a>&gt=
;</span>:<span><br><blockquote class=3D"gmail_quote" style=3D"margin:0px 0p=
x 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div d=
ir=3D"ltr"><div><div class=3D"gmail_quote"><span>On Sat, Oct 1, 2016 at 5:0=
0 AM, Nicol Bolas <span dir=3D"ltr">&lt;<a rel=3D"nofollow">jmck...@gmail.c=
om</a>&gt;</span> wrote:<br><blockquote class=3D"gmail_quote" style=3D"marg=
in:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1e=
x"><div>I think it would be better if we just had designated initializers a=
nd have such functions take a struct that has default member initializers.=
=C2=A0</div></blockquote><div><br></div></span><blockquote class=3D"gmail_q=
uote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,2=
04);padding-left:1ex"><div dir=3D"ltr">...much easier to read on the caller=
&#39;s end. You don&#39;t have random `default` tags everywhere you want to=
 avoid naming a parameter; you just don&#39;t name the parameter.<br></div>=
</blockquote><div><br></div><div>I think designated initialisers would be g=
ood (if presumably fraught with difficulty to implement, else why don&#39;t=
 we have them yet?), and I think having to pile defaults into a function ca=
ll would be bad... but I don&#39;t think the one is the solution for the ot=
her. Though sure, it could work.<br></div></div></div></div></blockquote><b=
r>Actually a restricted form of designated initializers is already accepted=
 (See P0329R0).</span></div></div></div></blockquote><div><br>No, it hasn&#=
39;t been accepted yet; it&#39;s just a proposal.</div></div></blockquote><=
br>See Botond&#39;s trip report about the accepted proposals:<br><a href=3D=
"https://botondballo.wordpress.com/2016/07/06/trip-report-c-standards-meeti=
ng-in-oulu-june-2016/" target=3D"_blank" rel=3D"nofollow" onmousedown=3D"th=
is.href=3D&#39;https://www.google.com/url?q\x3dhttps%3A%2F%2Fbotondballo.wo=
rdpress.com%2F2016%2F07%2F06%2Ftrip-report-c-standards-meeting-in-oulu-june=
-2016%2F\x26sa\x3dD\x26sntz\x3d1\x26usg\x3dAFQjCNGZNd3tY9x3aqywaL5EIRVeu4eZ=
lA&#39;;return true;" onclick=3D"this.href=3D&#39;https://www.google.com/ur=
l?q\x3dhttps%3A%2F%2Fbotondballo.wordpress.com%2F2016%2F07%2F06%2Ftrip-repo=
rt-c-standards-meeting-in-oulu-june-2016%2F\x26sa\x3dD\x26sntz\x3d1\x26usg\=
x3dAFQjCNGZNd3tY9x3aqywaL5EIRVeu4eZlA&#39;;return true;">https://botondball=
o.wordpress.<wbr>com/2016/07/06/trip-report-c-<wbr>standards-meeting-in-oul=
u-<wbr>june-2016/</a></div></div></div></blockquote><div><br>He wrote one f=
or Oulu? I always use isocpp.org to keep up with his trip reports, and it w=
as never posted there.<br><br>On the plus side, I&#39;m glad to see the com=
mittee give the nod to designated initializers, even if it&#39;s not in the=
 most perfect form.<br></div></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/fa00764d-5dd4-4b45-8e32-b614339616f7%=
40isocpp.org?utm_medium=3Demail&utm_source=3Dfooter">https://groups.google.=
com/a/isocpp.org/d/msgid/std-proposals/fa00764d-5dd4-4b45-8e32-b614339616f7=
%40isocpp.org</a>.<br />

------=_Part_928_1691546037.1475386804096--

------=_Part_927_1316806270.1475386804096--

.


Author: "D. B." <db0451@gmail.com>
Date: Sun, 2 Oct 2016 09:55:19 +0100
Raw View
--089e01228c12ac21a7053dddfc99
Content-Type: text/plain; charset=UTF-8

Hm, according to that, it's accepted for C++20, rather than 17. Now that's
forward planning!

Really interesting post - thanks for the link. Quite a lot to be excited
about, but the more interesting parts are the elaboration on why things
that we knew were delayed are being delayed. e.g.  it's good to read more
about operator.(). That's my favourite category of C++ism, in that when I
first read about it my thoughts were 'what the heck is this nonsense', and
now I can't wait for it to hit the language. NB comment pls!

--
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/isocpp.org/d/msgid/std-proposals/CACGiwhE4AQQ07xOr5xDHHM1g2xqohKEsL4AdrGhj%2B0t2jzJyLA%40mail.gmail.com.

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

<div dir=3D"ltr"><div>Hm, according to that, it&#39;s accepted for C++20, r=
ather than 17. Now that&#39;s forward planning!<br><br></div>Really interes=
ting post - thanks for the link. Quite a lot to be excited about, but the m=
ore interesting parts are the elaboration on why things that we knew were d=
elayed are being delayed. e.g.=C2=A0 it&#39;s good to read more about opera=
tor.(). That&#39;s my favourite category of C++ism, in that when I first re=
ad about it my thoughts were &#39;what the heck is this nonsense&#39;, and =
now I can&#39;t wait for it to hit the language. NB comment pls!<br><br></d=
iv>

<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/CACGiwhE4AQQ07xOr5xDHHM1g2xqohKEsL4Ad=
rGhj%2B0t2jzJyLA%40mail.gmail.com?utm_medium=3Demail&utm_source=3Dfooter">h=
ttps://groups.google.com/a/isocpp.org/d/msgid/std-proposals/CACGiwhE4AQQ07x=
Or5xDHHM1g2xqohKEsL4AdrGhj%2B0t2jzJyLA%40mail.gmail.com</a>.<br />

--089e01228c12ac21a7053dddfc99--

.