Boost logo

Boost :

Subject: Re: [boost] [process] Formal Review starts today, 27 October
From: Gavin Lambert (gavinl_at_[hidden])
Date: 2016-11-06 19:14:20


On 6/11/2016 21:30, Klemens Morgenstern wrote:
>>> The core of my proposal is to keep attributes separate from arguments
>>> (granted, this was not explicitly mentioned before.)
[...]
> That is because it is one of the three launch functions, but their are
> actually quite clearly defined. You either pass a known type that will
> be intepreted as some property (i.e. std::string->args) or you pass a
> property directly, i.e. args+="Value". That is quite clear, but it is
> extensible, hence the list of actually allowed types are written in the
> reference at the properties, not in a central list.

I think perhaps the request is to remove the magic inferring of purpose
for external argument types (eg. that passing a std::string represents
an argument... sometimes) in favour of making this explicit (arguments
can only be passed via "args", either constructed inline or prepared
beforehand and passed in.

By extension, probably the only types that the launch functions should
accept are the explicit "named parameters" helper types defined in
Boost.Process (or compatible extensions).

This might be slightly annoying in the case of the child process
executable path, though. I don't know whether it'd be worthwhile making
an exception for that case or not.

(I'm personally on the fence on this topic; just trying to clarify.)


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk