Topic: Parsing program arguments


Author: Achille Roussel <achille.roussel@gmail.com>
Date: Tue, 29 Oct 2013 18:02:00 -0700 (PDT)
Raw View
------=_Part_599_16167504.1383094920107
Content-Type: text/plain; charset=ISO-8859-1

Hello everyone,

I'm using C++ a lot and something that's still a pain is parsing program
arguments (argc and argv in the main function), it's an old interface
inherited from C.
I wonder why the standard library still hasn't provided a higher level
abstraction for this task yet, was it discussed before and abandoned for
some reasons?

Cheers!

--

---
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_599_16167504.1383094920107
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">Hello everyone,<br><br>I'm using C++ a lot and something t=
hat's still a pain is parsing program arguments (argc and argv in the main =
function), it's an old interface inherited from C.<br>I wonder why the stan=
dard library still hasn't provided a higher level abstraction for this task=
 yet, was it discussed before and abandoned for some reasons?<br><br>Cheers=
!<br></div>

<p></p>

-- <br />
&nbsp;<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 std-proposals+unsubscribe@isocpp.org.<br />
To post to this group, send email to std-proposals@isocpp.org.<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_599_16167504.1383094920107--

.


Author: David Krauss <potswa@gmail.com>
Date: Wed, 30 Oct 2013 09:30:31 +0800
Raw View
On 10/30/13 9:02 AM, Achille Roussel wrote:
> Hello everyone,
>
> I'm using C++ a lot and something that's still a pain is parsing program
> arguments (argc and argv in the main function), it's an old interface
> inherited from C.
> I wonder why the standard library still hasn't provided a higher level
> abstraction for this task yet, was it discussed before and abandoned for
> some reasons?
>
> Cheers!
>
Conventions vary between platforms. Windows uses / and Unix uses -. And
nothing says the command line is where the user gets to pass options;
argc/argv could be usurped by some other platform functionality.

I suppose these aren't really excuses, since the library should actually
abstract away such things. Perhaps the abstraction should actually be
based on more modern interfaces like iOS' persistent settings facility,
as long as Unix CLI interfacing remains natural.

A proposal could be well received. Look into Boost.ProgramOptions and
ask the authors whether they have considered standardization.

--

---
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: "Billy O'Neal" <billy.oneal@gmail.com>
Date: Tue, 29 Oct 2013 19:23:25 -0700
Raw View
--bcaec5171911039b8004e9ec0734
Content-Type: text/plain; charset=ISO-8859-1

I suspect the issue is that every platform has different behavior for what
they call an "argument". Consider Boost.ProgramOptions if you want a
solution that will work for most programs.

Billy O'Neal
https://github.com/BillyONeal/ <https://bitbucket.org/BillyONeal/>
http://stackoverflow.com/users/82320/billy-oneal
Malware Response Instructor - BleepingComputer.com


On Tue, Oct 29, 2013 at 6:02 PM, Achille Roussel
<achille.roussel@gmail.com>wrote:

> Hello everyone,
>
> I'm using C++ a lot and something that's still a pain is parsing program
> arguments (argc and argv in the main function), it's an old interface
> inherited from C.
> I wonder why the standard library still hasn't provided a higher level
> abstraction for this task yet, was it discussed before and abandoned for
> some reasons?
>
> Cheers!
>
> --
>
> ---
> 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/.

--bcaec5171911039b8004e9ec0734
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div>I suspect the issue is that every platform has differ=
ent behavior for what they call an &quot;argument&quot;. Consider Boost.Pro=
gramOptions if you want a solution that will work for most programs.</div>

</div><div class=3D"gmail_extra"><br clear=3D"all"><div><div dir=3D"ltr"><d=
iv>Billy O&#39;Neal</div><div><a href=3D"https://bitbucket.org/BillyONeal/"=
 target=3D"_blank">https://github.com/BillyONeal/</a></div><div><a href=3D"=
http://stackoverflow.com/users/82320/billy-oneal" target=3D"_blank">http://=
stackoverflow.com/users/82320/billy-oneal</a></div>

<div>Malware Response Instructor - BleepingComputer.com</div></div></div>
<br><br><div class=3D"gmail_quote">On Tue, Oct 29, 2013 at 6:02 PM, Achille=
 Roussel <span dir=3D"ltr">&lt;<a href=3D"mailto:achille.roussel@gmail.com"=
 target=3D"_blank">achille.roussel@gmail.com</a>&gt;</span> wrote:<br><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"ltr">Hello everyone,<br><br>I&#39;m using C++ a lot and somethi=
ng that&#39;s still a pain is parsing program arguments (argc and argv in t=
he main function), it&#39;s an old interface inherited from C.<br>I wonder =
why the standard library still hasn&#39;t provided a higher level abstracti=
on for this task yet, was it discussed before and abandoned for some reason=
s?<br>

<br>Cheers!<span class=3D"HOEnZb"><font color=3D"#888888"><br></font></span=
></div><span class=3D"HOEnZb"><font color=3D"#888888">

<p></p>

-- <br>
=A0<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%2Bunsubscribe@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>
</font></span></blockquote></div><br></div>

<p></p>

-- <br />
&nbsp;<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 std-proposals+unsubscribe@isocpp.org.<br />
To post to this group, send email to std-proposals@isocpp.org.<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 />

--bcaec5171911039b8004e9ec0734--

.


Author: Achille Roussel <achille.roussel@gmail.com>
Date: Tue, 29 Oct 2013 20:13:46 -0700 (PDT)
Raw View
------=_Part_142_18785898.1383102826609
Content-Type: text/plain; charset=ISO-8859-1

I'm familiar with Boost.ProgramOptions, but I often felt like the interface
they offer is a bit over complicated, and in fact they try to solve a way
bigger problem by providing a single interface for parsing program
arguments, configuration files and environment variables.
I like the Python approach for parsing command line arguments, they're not
trying to solve all problems but rather provide a tool that's simple to use
and is good enough for 99% of the programs... and for the ones with more
exotic arguments the raw string vector is still accessible.

I think the standard library could have the same approach, providing a tool
that will be easy and flexible enough for most programs, and for special
cases where a developer needs a more complex configuration manager Boost
will still be a fallback solution.

On Tuesday, October 29, 2013 7:23:25 PM UTC-7, Billy O'Neal wrote:
>
> I suspect the issue is that every platform has different behavior for what
> they call an "argument". Consider Boost.ProgramOptions if you want a
> solution that will work for most programs.
>
> Billy O'Neal
> https://github.com/BillyONeal/ <https://bitbucket.org/BillyONeal/>
> http://stackoverflow.com/users/82320/billy-oneal
> Malware Response Instructor - BleepingComputer.com
>
>
> On Tue, Oct 29, 2013 at 6:02 PM, Achille Roussel <achille...@gmail.com<javascript:>
> > wrote:
>
>> Hello everyone,
>>
>> I'm using C++ a lot and something that's still a pain is parsing program
>> arguments (argc and argv in the main function), it's an old interface
>> inherited from C.
>> I wonder why the standard library still hasn't provided a higher level
>> abstraction for this task yet, was it discussed before and abandoned for
>> some reasons?
>>
>> Cheers!
>>
>> --
>>
>> ---
>> 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-proposal...@isocpp.org <javascript:>.
>> To post to this group, send email to std-pr...@isocpp.org <javascript:>.
>> 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/.

------=_Part_142_18785898.1383102826609
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">I'm familiar with Boost.ProgramOptions, but I often felt l=
ike the interface they offer is a bit over complicated, and in fact they tr=
y to solve a way bigger problem by providing a single interface for parsing=
 program arguments, configuration files and environment variables.<br>I lik=
e the Python approach for parsing command line arguments, they're not tryin=
g to solve all problems but rather provide a tool that's simple to use and =
is good enough for 99% of the programs... and for the ones with more exotic=
 arguments the raw string vector is still accessible.<br><br>I think the st=
andard library could have the same approach, providing a tool that will be =
easy and flexible enough for most programs, and for special cases where a d=
eveloper needs a more complex configuration manager Boost will still be a f=
allback solution.<br><br>On Tuesday, October 29, 2013 7:23:25 PM UTC-7, Bil=
ly O'Neal 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"lt=
r"><div>I suspect the issue is that every platform has different behavior f=
or what they call an "argument". Consider Boost.ProgramOptions if you want =
a solution that will work for most programs.</div>

</div><div><br clear=3D"all"><div><div dir=3D"ltr"><div>Billy O'Neal</div><=
div><a href=3D"https://bitbucket.org/BillyONeal/" target=3D"_blank">https:/=
/github.com/BillyONeal/</a></div><div><a href=3D"http://stackoverflow.com/u=
sers/82320/billy-oneal" target=3D"_blank">http://stackoverflow.com/<wbr>use=
rs/82320/billy-oneal</a></div>

<div>Malware Response Instructor - BleepingComputer.com</div></div></div>
<br><br><div class=3D"gmail_quote">On Tue, Oct 29, 2013 at 6:02 PM, Achille=
 Roussel <span dir=3D"ltr">&lt;<a href=3D"javascript:" target=3D"_blank" gd=
f-obfuscated-mailto=3D"VKRK7mTE11EJ">achille...@gmail.com</a>&gt;</span> wr=
ote:<br><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border=
-left:1px #ccc solid;padding-left:1ex">

<div dir=3D"ltr">Hello everyone,<br><br>I'm using C++ a lot and something t=
hat's still a pain is parsing program arguments (argc and argv in the main =
function), it's an old interface inherited from C.<br>I wonder why the stan=
dard library still hasn't provided a higher level abstraction for this task=
 yet, was it discussed before and abandoned for some reasons?<br>

<br>Cheers!<span><font color=3D"#888888"><br></font></span></div><span><fon=
t color=3D"#888888">

<p></p>

-- <br>
&nbsp;<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"javascript:" target=3D"_blank" gdf-obfuscated-mailto=3D"=
VKRK7mTE11EJ">std-proposal...@<wbr>isocpp.org</a>.<br>
To post to this group, send email to <a href=3D"javascript:" target=3D"_bla=
nk" gdf-obfuscated-mailto=3D"VKRK7mTE11EJ">std-pr...@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/<wbr>isocpp.or=
g/group/std-<wbr>proposals/</a>.<br>
</font></span></blockquote></div><br></div>
</blockquote></div>

<p></p>

-- <br />
&nbsp;<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 std-proposals+unsubscribe@isocpp.org.<br />
To post to this group, send email to std-proposals@isocpp.org.<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_142_18785898.1383102826609--

.


Author: "Billy O'Neal" <billy.oneal@gmail.com>
Date: Tue, 29 Oct 2013 20:33:00 -0700
Raw View
--e89a8fb1fde6dcb10904e9ecffa6
Content-Type: text/plain; charset=ISO-8859-1

http://stackoverflow.com/questions/253556/what-parameter-parser-libraries-are-there-for-c?

Billy O'Neal
On Tue, Oct 29, 2013 at 8:13 PM, Achille Roussel
<achille.roussel@gmail.com>wrote:

> I'm familiar with Boost.ProgramOptions, but I often felt like the
> interface they offer is a bit over complicated, and in fact they try to
> solve a way bigger problem by providing a single interface for parsing
> program arguments, configuration files and environment variables.
> I like the Python approach for parsing command line arguments, they're not
> trying to solve all problems but rather provide a tool that's simple to use
> and is good enough for 99% of the programs... and for the ones with more
> exotic arguments the raw string vector is still accessible.
>
> I think the standard library could have the same approach, providing a
> tool that will be easy and flexible enough for most programs, and for
> special cases where a developer needs a more complex configuration manager
> Boost will still be a fallback solution.
>
>
> On Tuesday, October 29, 2013 7:23:25 PM UTC-7, Billy O'Neal wrote:
>
>> I suspect the issue is that every platform has different behavior for
>> what they call an "argument". Consider Boost.ProgramOptions if you want a
>> solution that will work for most programs.
>>
>> Billy O'Neal
>> https://github.com/BillyONeal/ <https://bitbucket.org/BillyONeal/>
>> http://stackoverflow.com/**users/82320/billy-oneal<http://stackoverflow.com/users/82320/billy-oneal>
>> Malware Response Instructor - BleepingComputer.com
>>
>>
>> On Tue, Oct 29, 2013 at 6:02 PM, Achille Roussel <achille...@gmail.com>wrote:
>>
>>>  Hello everyone,
>>>
>>> I'm using C++ a lot and something that's still a pain is parsing program
>>> arguments (argc and argv in the main function), it's an old interface
>>> inherited from C.
>>> I wonder why the standard library still hasn't provided a higher level
>>> abstraction for this task yet, was it discussed before and abandoned for
>>> some reasons?
>>>
>>> Cheers!
>>>
>>> --
>>>
>>> ---
>>> 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-proposal...@**isocpp.org.
>>> To post to this group, send email to std-pr...@isocpp.org.
>>>
>>> Visit this group at http://groups.google.com/a/**isocpp.org/group/std-**
>>> proposals/ <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/.
>

--

---
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/.

--e89a8fb1fde6dcb10904e9ecffa6
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><a href=3D"http://stackoverflow.com/questions/253556/what-=
parameter-parser-libraries-are-there-for-c">http://stackoverflow.com/questi=
ons/253556/what-parameter-parser-libraries-are-there-for-c</a> ?<div class=
=3D"gmail_extra">

<br clear=3D"all"><div><div dir=3D"ltr"><div>Billy O&#39;Neal</div></div></=
div><div class=3D"gmail_quote">On Tue, Oct 29, 2013 at 8:13 PM, Achille Rou=
ssel <span dir=3D"ltr">&lt;<a href=3D"mailto:achille.roussel@gmail.com" tar=
get=3D"_blank">achille.roussel@gmail.com</a>&gt;</span> wrote:<br>

<blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;padding=
-left:1ex;border-left-color:rgb(204,204,204);border-left-width:1px;border-l=
eft-style:solid"><div dir=3D"ltr">I&#39;m familiar with Boost.ProgramOption=
s, but I often felt like the interface they offer is a bit over complicated=
, and in fact they try to solve a way bigger problem by providing a single =
interface for parsing program arguments, configuration files and environmen=
t variables.<br>

I like the Python approach for parsing command line arguments, they&#39;re =
not trying to solve all problems but rather provide a tool that&#39;s simpl=
e to use and is good enough for 99% of the programs... and for the ones wit=
h more exotic arguments the raw string vector is still accessible.<br>

<br>I think the standard library could have the same approach, providing a =
tool that will be easy and flexible enough for most programs, and for speci=
al cases where a developer needs a more complex configuration manager Boost=
 will still be a fallback solution.<div class=3D"im">

<br><br>On Tuesday, October 29, 2013 7:23:25 PM UTC-7, Billy O&#39;Neal wro=
te:</div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8e=
x;padding-left:1ex;border-left-color:rgb(204,204,204);border-left-width:1px=
;border-left-style:solid">

<div class=3D"im"><div dir=3D"ltr"><div>I suspect the issue is that every p=
latform has different behavior for what they call an &quot;argument&quot;. =
Consider Boost.ProgramOptions if you want a solution that will work for mos=
t programs.</div>



</div></div><div><div class=3D"im"><br clear=3D"all"><div><div dir=3D"ltr">=
<div>Billy O&#39;Neal</div><div><a href=3D"https://bitbucket.org/BillyONeal=
/" target=3D"_blank">https://github.com/BillyONeal/</a></div><div><a href=
=3D"http://stackoverflow.com/users/82320/billy-oneal" target=3D"_blank">htt=
p://stackoverflow.com/<u></u>users/82320/billy-oneal</a></div>



<div>Malware Response Instructor - BleepingComputer.com</div></div></div>
<br><br></div><div class=3D"gmail_quote"><div class=3D"im">On Tue, Oct 29, =
2013 at 6:02 PM, Achille Roussel <span dir=3D"ltr">&lt;<a>achille...@gmail.=
com</a>&gt;</span> wrote:<br></div><blockquote class=3D"gmail_quote" style=
=3D"margin:0px 0px 0px 0.8ex;padding-left:1ex;border-left-color:rgb(204,204=
,204);border-left-width:1px;border-left-style:solid">

<div class=3D"im">

<div dir=3D"ltr">Hello everyone,<br><br>I&#39;m using C++ a lot and somethi=
ng that&#39;s still a pain is parsing program arguments (argc and argv in t=
he main function), it&#39;s an old interface inherited from C.<br>I wonder =
why the standard library still hasn&#39;t provided a higher level abstracti=
on for this task yet, was it discussed before and abandoned for some reason=
s?<br>



<br>Cheers!<span><font color=3D"#888888"><br></font></span></div></div><spa=
n><font color=3D"#888888"><div class=3D"im">

<p></p>

-- <br>
=A0<br>
--- <br>
You received this message because you are subscribed to the Google Groups &=
quot;ISO C++ Standard - Future Proposals&quot; group.<br></div>
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a>std-proposal...@<u></u>isocpp.org</a>.<br>
To post to this group, send email to <a>std-pr...@isocpp.org</a>.<div class=
=3D"im"><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/<u></u>isocpp.=
org/group/std-<u></u>proposals/</a>.<br>
</div></font></span></blockquote></div><br></div>
</blockquote></div><div class=3D"HOEnZb"><div class=3D"h5">

<p></p>

-- <br>
=A0<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%2Bunsubscribe@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 />
&nbsp;<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 std-proposals+unsubscribe@isocpp.org.<br />
To post to this group, send email to std-proposals@isocpp.org.<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 />

--e89a8fb1fde6dcb10904e9ecffa6--

.


Author: Jean-Marc Bourguet <jm.bourguet@gmail.com>
Date: Wed, 30 Oct 2013 09:06:47 -0700 (PDT)
Raw View
------=_Part_155_25908281.1383149207120
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

Le mercredi 30 octobre 2013 02:30:31 UTC+1, David Krauss a =E9crit :
>
> Conventions vary between platforms. Windows uses / and Unix uses -. And=
=20
> nothing says the command line is where the user gets to pass options;=20
> argc/argv could be usurped by some other platform functionality.=20
>
> I suppose these aren't really excuses,=20
>

They even look like arguments for standardizing something.=20

--=20
Jean-Marc

--=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/.

------=_Part_155_25908281.1383149207120
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">Le mercredi 30 octobre 2013 02:30:31 UTC+1, David Krauss a=
 =E9crit&nbsp;:<blockquote class=3D"gmail_quote" style=3D"margin: 0;margin-=
left: 0.8ex;border-left: 1px #ccc solid;padding-left: 1ex;">Conventions var=
y between platforms. Windows uses / and Unix uses -. And=20
<br>nothing says the command line is where the user gets to pass options;=
=20
<br>argc/argv could be usurped by some other platform functionality.
<br>
<br>I suppose these aren't really excuses, <br></blockquote><div><br>They e=
ven look like arguments for standardizing something. <br><br>-- <br>Jean-Ma=
rc<br></div></div>

<p></p>

-- <br />
&nbsp;<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 std-proposals+unsubscribe@isocpp.org.<br />
To post to this group, send email to std-proposals@isocpp.org.<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_155_25908281.1383149207120--

.


Author: "Billy O'Neal" <billy.oneal@gmail.com>
Date: Wed, 30 Oct 2013 09:29:03 -0700
Raw View
--001a11c2f3a63cc4c104e9f7d7d7
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

The issue with "standardizing something" in that case is that one platform
or the other has to "lose". Most things the committee standardizes are
generally well agreed upon by the platforms available (e.g. all the
components of thread were available in Windows threads and POSIX threads
for a long time now).

There are other issues too -- e.g. in most Unix environments the shell is
responsible for expanding file specs.

The CLI is no different than a GUI in this regard -- even if you can pick
one UI, you probably shouldn't. (This is one of the difficulties with using
widget tookits like Qt and wxWidgets)

You might be able to standardize this such that many of these details are
"implementation defined" -- but what is and is not implementation defined
would need to be better specified.

Billy O'Neal
https://github.com/BillyONeal/ <https://bitbucket.org/BillyONeal/>
http://stackoverflow.com/users/82320/billy-oneal
Malware Response Instructor - BleepingComputer.com


On Wed, Oct 30, 2013 at 9:06 AM, Jean-Marc Bourguet
<jm.bourguet@gmail.com>wrote:

> Le mercredi 30 octobre 2013 02:30:31 UTC+1, David Krauss a =E9crit :
>>
>> Conventions vary between platforms. Windows uses / and Unix uses -. And
>> nothing says the command line is where the user gets to pass options;
>> argc/argv could be usurped by some other platform functionality.
>>
>> I suppose these aren't really excuses,
>>
>
> They even look like arguments for standardizing something.
>
> --
> Jean-Marc
>
> --
>
> ---
> 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/.

--001a11c2f3a63cc4c104e9f7d7d7
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div>The issue with &quot;standardizing something&quot; in=
 that case is that one platform or the other has to &quot;lose&quot;. Most =
things the committee standardizes are generally well agreed upon by the pla=
tforms available (e.g. all the components of thread were available in Windo=
ws threads and POSIX threads for a long time now).</div>

<div>=A0</div><div>There are other issues too -- e.g. in most Unix environm=
ents the shell is responsible for expanding file specs.</div><div>=A0</div>=
<div>The CLI is no different than a GUI in this regard -- even if you can p=
ick one UI, you probably shouldn&#39;t. (This is one of the difficulties wi=
th using widget tookits like Qt and wxWidgets)</div>

<div>=A0</div><div>You might be able to standardize this such that many of =
these details are &quot;implementation defined&quot; -- but what is and is =
not implementation defined would need to be better specified.</div></div>

<div class=3D"gmail_extra"><br clear=3D"all"><div><div dir=3D"ltr"><div>Bil=
ly O&#39;Neal</div><div><a href=3D"https://bitbucket.org/BillyONeal/" targe=
t=3D"_blank">https://github.com/BillyONeal/</a></div><div><a href=3D"http:/=
/stackoverflow.com/users/82320/billy-oneal" target=3D"_blank">http://stacko=
verflow.com/users/82320/billy-oneal</a></div>

<div>Malware Response Instructor - BleepingComputer.com</div></div></div>
<br><br><div class=3D"gmail_quote">On Wed, Oct 30, 2013 at 9:06 AM, Jean-Ma=
rc Bourguet <span dir=3D"ltr">&lt;<a href=3D"mailto:jm.bourguet@gmail.com" =
target=3D"_blank">jm.bourguet@gmail.com</a>&gt;</span> wrote:<br><blockquot=
e class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc sol=
id;padding-left:1ex">

<div dir=3D"ltr">Le mercredi 30 octobre 2013 02:30:31 UTC+1, David Krauss a=
 =E9crit=A0:<blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0=
..8ex;padding-left:1ex;border-left-color:rgb(204,204,204);border-left-width:=
1px;border-left-style:solid">

Conventions vary between platforms. Windows uses / and Unix uses -. And=20
<br>nothing says the command line is where the user gets to pass options;=
=20
<br>argc/argv could be usurped by some other platform functionality.
<br>
<br>I suppose these aren&#39;t really excuses, <br></blockquote><div><br>Th=
ey even look like arguments for standardizing something. <br><span class=3D=
"HOEnZb"><font color=3D"#888888"><br>-- <br>Jean-Marc<br></font></span></di=
v>

</div><div class=3D"HOEnZb"><div class=3D"h5">

<p></p>

-- <br>
=A0<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%2Bunsubscribe@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 />
&nbsp;<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 std-proposals+unsubscribe@isocpp.org.<br />
To post to this group, send email to std-proposals@isocpp.org.<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 />

--001a11c2f3a63cc4c104e9f7d7d7--

.


Author: Achille Roussel <achille.roussel@gmail.com>
Date: Wed, 30 Oct 2013 14:02:51 -0700 (PDT)
Raw View
------=_Part_166_11414901.1383166971515
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

I don't think the way the shell interprets the command line is an issue for=
=20
standardizing program argument parsing, it doesn't matter what syntax your=
=20
shell uses, from the program's perspective all you receive is a list of=20
strings and that's what we would need a tool to deal with.
I don't think any platform has to "lose" either, I think having a tool that=
=20
fulfills even only part of the needs of most platforms is better than not=
=20
having a tool at all.
I agree some parts of such a tool would be implementation defined, but they=
=20
don't have to be large parts, the idea I think is not to try to be too=20
smart or too high level, but rather to provide a small abstraction that=20
makes common program argument parsing much easier than it is right now.

On Wednesday, October 30, 2013 9:29:03 AM UTC-7, Billy O'Neal wrote:
>
> The issue with "standardizing something" in that case is that one platfor=
m=20
> or the other has to "lose". Most things the committee standardizes are=20
> generally well agreed upon by the platforms available (e.g. all the=20
> components of thread were available in Windows threads and POSIX threads=
=20
> for a long time now).
> =20
> There are other issues too -- e.g. in most Unix environments the shell is=
=20
> responsible for expanding file specs.
> =20
> The CLI is no different than a GUI in this regard -- even if you can pick=
=20
> one UI, you probably shouldn't. (This is one of the difficulties with usi=
ng=20
> widget tookits like Qt and wxWidgets)
> =20
> You might be able to standardize this such that many of these details are=
=20
> "implementation defined" -- but what is and is not implementation defined=
=20
> would need to be better specified.
>
> Billy O'Neal
> https://github.com/BillyONeal/ <https://bitbucket.org/BillyONeal/>
> http://stackoverflow.com/users/82320/billy-oneal
> Malware Response Instructor - BleepingComputer.com
>
>
> On Wed, Oct 30, 2013 at 9:06 AM, Jean-Marc Bourguet <jm.bo...@gmail.com<j=
avascript:>
> > wrote:
>
>> Le mercredi 30 octobre 2013 02:30:31 UTC+1, David Krauss a =E9crit :
>>>
>>> Conventions vary between platforms. Windows uses / and Unix uses -. And=
=20
>>> nothing says the command line is where the user gets to pass options;=
=20
>>> argc/argv could be usurped by some other platform functionality.=20
>>>
>>> I suppose these aren't really excuses,=20
>>>
>>
>> They even look like arguments for standardizing something.=20
>>
>> --=20
>> Jean-Marc
>> =20
>> --=20
>> =20
>> ---=20
>> You received this message because you are subscribed to the Google Group=
s=20
>> "ISO C++ Standard - Future Proposals" group.
>> To unsubscribe from this group and stop receiving emails from it, send a=
n=20
>> email to std-proposal...@isocpp.org <javascript:>.
>> To post to this group, send email to std-pr...@isocpp.org <javascript:>.
>> Visit this group at=20
>> 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/.

------=_Part_166_11414901.1383166971515
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">I don't think the way the shell interprets the command lin=
e is an issue for standardizing program argument parsing, it doesn't matter=
 what syntax your shell uses, from the program's perspective all you receiv=
e is a list of strings and that's what we would need a tool to deal with.<b=
r>I don't think any platform has to "lose" either, I think having a tool th=
at fulfills even only part of the needs of most platforms is better than no=
t having a tool at all.<br>I agree some parts of such a tool would be imple=
mentation defined, but they don't have to be large parts, the idea I think =
is not to try to be too smart or too high level, but rather to provide a sm=
all abstraction that makes common program argument parsing much easier than=
 it is right now.<br><br>On Wednesday, October 30, 2013 9:29:03 AM UTC-7, B=
illy O'Neal wrote:<blockquote class=3D"gmail_quote" style=3D"margin: 0;marg=
in-left: 0.8ex;border-left: 1px #ccc solid;padding-left: 1ex;"><div dir=3D"=
ltr"><div>The issue with "standardizing something" in that case is that one=
 platform or the other has to "lose". Most things the committee standardize=
s are generally well agreed upon by the platforms available (e.g. all the c=
omponents of thread were available in Windows threads and POSIX threads for=
 a long time now).</div>

<div>&nbsp;</div><div>There are other issues too -- e.g. in most Unix envir=
onments the shell is responsible for expanding file specs.</div><div>&nbsp;=
</div><div>The CLI is no different than a GUI in this regard -- even if you=
 can pick one UI, you probably shouldn't. (This is one of the difficulties =
with using widget tookits like Qt and wxWidgets)</div>

<div>&nbsp;</div><div>You might be able to standardize this such that many =
of these details are "implementation defined" -- but what is and is not imp=
lementation defined would need to be better specified.</div></div>

<div><br clear=3D"all"><div><div dir=3D"ltr"><div>Billy O'Neal</div><div><a=
 href=3D"https://bitbucket.org/BillyONeal/" target=3D"_blank">https://githu=
b.com/BillyONeal/</a></div><div><a href=3D"http://stackoverflow.com/users/8=
2320/billy-oneal" target=3D"_blank">http://stackoverflow.com/<wbr>users/823=
20/billy-oneal</a></div>

<div>Malware Response Instructor - BleepingComputer.com</div></div></div>
<br><br><div class=3D"gmail_quote">On Wed, Oct 30, 2013 at 9:06 AM, Jean-Ma=
rc Bourguet <span dir=3D"ltr">&lt;<a href=3D"javascript:" target=3D"_blank"=
 gdf-obfuscated-mailto=3D"rqcA2700oI0J">jm.bo...@gmail.com</a>&gt;</span> w=
rote:<br><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;borde=
r-left:1px #ccc solid;padding-left:1ex">

<div dir=3D"ltr">Le mercredi 30 octobre 2013 02:30:31 UTC+1, David Krauss a=
 =E9crit&nbsp;:<blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0p=
x 0.8ex;padding-left:1ex;border-left-color:rgb(204,204,204);border-left-wid=
th:1px;border-left-style:solid">

Conventions vary between platforms. Windows uses / and Unix uses -. And=20
<br>nothing says the command line is where the user gets to pass options;=
=20
<br>argc/argv could be usurped by some other platform functionality.
<br>
<br>I suppose these aren't really excuses, <br></blockquote><div><br>They e=
ven look like arguments for standardizing something. <br><span><font color=
=3D"#888888"><br>-- <br>Jean-Marc<br></font></span></div>

</div><div><div>

<p></p>

-- <br>
&nbsp;<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"javascript:" target=3D"_blank" gdf-obfuscated-mailto=3D"=
rqcA2700oI0J">std-proposal...@<wbr>isocpp.org</a>.<br>
To post to this group, send email to <a href=3D"javascript:" target=3D"_bla=
nk" gdf-obfuscated-mailto=3D"rqcA2700oI0J">std-pr...@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/<wbr>isocpp.or=
g/group/std-<wbr>proposals/</a>.<br>
</div></div></blockquote></div><br></div>
</blockquote></div>

<p></p>

-- <br />
&nbsp;<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 std-proposals+unsubscribe@isocpp.org.<br />
To post to this group, send email to std-proposals@isocpp.org.<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_166_11414901.1383166971515--

.