[R] The "--slave" option ==> will become "--no-echo"

Duncan Murdoch murdoch@dunc@n @end|ng |rom gm@||@com
Fri Sep 27 23:41:59 CEST 2019


On 27/09/2019 5:36 p.m., William Michels via R-help wrote:
> Hi Martin,
> 
> '--no-echo'
> 
> ....or....
> 
> '--no_echo'
> 
> Obviously you may prefer the first, but I hope you might consider the second.

Are you serious?  That's a terrible suggestion.  Run "R --help" and 
you'll see *no* options with underscores, and a dozen with embedded hyphens.

Duncan Murdoch

> 
> Best Regards,
> 
> W. Michels, Ph.D.
> 
> 
> On Fri, Sep 27, 2019 at 9:04 AM Martin Maechler
> <maechler using stat.math.ethz.ch> wrote:
>>
>>>>>>> Martin Maechler
>>>>>>>      on Mon, 23 Sep 2019 16:14:36 +0200 writes:
>>
>>>>>>> Richard O'Keefe
>>>>>>>      on Sat, 21 Sep 2019 09:39:18 +1200 writes:
>>
>>      >> Ah, *now* we're getting somewhere.  There is something
>>      >> that *can* be done that's genuinely helpful.
>>      >>> From the R(1) manual page:
>>      >> -q, --quiet Don't print startup message
>>
>>      >> --silent Same as --quiet
>>
>>      >> --slave Make R run as quietly as possible
>>
>>      >> It might have been better to use --nobanner instead of
>>      >> --quiet.  So perhaps
>>
>>      >> -q, --quiet Don't print the startup message.  This is
>>      >> the only output that is suppressed.
>>
>>      >> --silent Same as --quiet.  Suppress the startup
>>      >> message only.
>>
>>      >> --slave Make R run as quietly as possible.  This is
>>      >> for use when running R as a subordinate process.  See
>>      >> "Introduction to Sub-Processes in R"
>>      >> https://cran.r-project.org/web/packages/subprocess/vignettes/intro.html
>>      >> for an example.
>>
>>      > Thank you, Stephen and Richard.
>>
>>      > I think we (the R Core Team) *can* make the description a bit
>>      > more verbose. However, as practically all "--<foo>" descriptions
>>      > are fitting in one short line, (and as the 'subprocess' package is just an
>>      > extension pkg, and may disappear (and more reasons)) I'd like to
>>      > be less verbose than your proposal.
>>
>>      > What about
>>
>>      > -q, --quiet               Don't print startup message
>>
>>      > --silent          Same as --quiet
>>
>>      > --slave           Make R run as quietly as possible.  For use when
>>      > runnning R as sub(ordinate) process.
>>
>>      > If you look more closely, you'll notice that --slave is not much
>>      > quieter than --quiet, the only (?) difference being that the
>>      > input is not copied and (only "mostly") the R prompt is also not printed.
>>
>>      > And from my experiments (in Linux (Fedora 30)), one might even
>>      > notice that in some cases --slave prints the R prompt (to stderr?)
>>      > which one might consider bogous (I'm not: not wanting to spend
>>      > time fixing this platform-independently) :
>>
>>      > --slave :
>>      > ------------------------
>>
>>      > MM using lynne$ echo '(i <- 1:3)
>>      > i*10' | R-3.6.1 --slave --vanilla
>>      >> [1] 1 2 3
>>      > [1] 10 20 30
>>      > MM using lynne$ f=/tmp/Rslave.out$$; echo '(i <- 1:3)
>>      > i*10' | R-3.6.1 --slave --vanilla | tee $f
>>      >> [1] 1 2 3
>>      > [1] 10 20 30
>>      > MM using lynne$ cat $f
>>      > [1] 1 2 3
>>      > [1] 10 20 30
>>
>>      > --quiet :
>>      > ------------------------
>>
>>      > MM using lynne$ f=/tmp/Rquiet.out$$; echo '(i <- 1:3)
>>      > i*10' | R-3.6.1 --quiet --vanilla | tee $f
>>      >> (i <- 1:3)
>>      > [1] 1 2 3
>>      >> i*10
>>      > [1] 10 20 30
>>      >>
>>      > MM using lynne$ cat $f
>>      >> (i <- 1:3)
>>      > [1] 1 2 3
>>      >> i*10
>>      > [1] 10 20 30
>>      >>
>>      > MM using lynne$
>>
>>      > ------------------------
>>
>>      > But there's a bit more to it: In my examples above, both --quiet
>>      > and --slave where used together with --vanilla.  In general
>>      > --slave *also* never saves, i.e., uses the equivalent of
>>      > q('no'), where as --quiet does [ask or ...].
>>
>>      > Last but not least, from very simply reading R's source code on
>>      > this, it becomes blatant that you can use  '-s'  instead of '--slave',
>>      > but we (R Core) have probably not documented that on purpose (so
>>      > we could reserve it for something more important, and redefine
>>      > the simple use of '-s' some time in the future ?)
>>
>>      > So, all those who want to restrict their language could use '-s'
>>      > for now.  In addition, we could add  >> one <<  other alias to
>>      > --slave, say --subprocess (or --quieter ? or ???)
>>      > and one could make that the preferred use some time in the future.
>>
>>      > Well, these were another two hours of time *not* spent improving
>>      > R technically, but spent reading e-mails, source code, and considering.
>>      > Maybe well spent, maybe not ...
>>
>>      > Martin Maechler
>>      > ETH Zurich and R Core Team
>>
>> With in the   R Core Team    we have considered the issue.
>>
>> As a consequence, I have committed a few minutes ago code changes
>> that replace '--slave' by '--no-echo' .
>> [This will be in R-devel versions from svn rev 77229 and of
>>   course in the "big step" release around April 2020].
>>
>> Among other considerations, we found that  '--no-echo' was
>> really much more self-explaining, as indeed the command line
>> option turns off the echo'ing of the R code that is executed,
>> and on the C level is indeed very much related to R level
>>
>>      options(echo = "no")
>>
>> For back compatibility reasons, the old command line option will
>> continue to work so the many shell and other scripts that use
>> it, will not stop working.
>>
>>
>> Best regards,
>> Martin Maechler
>> ETH Zurich and R Core Team
>>
>> ______________________________________________
>> R-help using r-project.org mailing list -- To UNSUBSCRIBE and more, see
>> https://stat.ethz.ch/mailman/listinfo/r-help
>> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
>> and provide commented, minimal, self-contained, reproducible code.
> 
> ______________________________________________
> R-help using r-project.org mailing list -- To UNSUBSCRIBE and more, see
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>



More information about the R-help mailing list