summary: how to structure an R file such that it can be both 1. used as a script via, e.g., (from OS commandline)
$ Rscript foo.r bar=baz 2. imported and called as a function via, e.g. (from R commandline) > source('./foo.r) > foo(bar='baz') ? I'm looking for the 'R equivalent' of how python supports this usecase. details: As discussed in the thread beginning https://stat.ethz.ch/pipermail/r-help/2012-September/323255.html I have a script https://github.com/TomRoche/GEIA_to_netCDF/blob/master/netCDF.stats.to.stdout.r that takes named arguments without undue pain. I would also like to be able to call it as a function from other scripts. How to do that in R? In case that's not specific enough :-) I know how to structure files/ modules in python like http://python.net/~goodger/projects/pycon/2007/idiomatic/cmdline.py (i.e., generically, http://python.net/~goodger/projects/pycon/2007/idiomatic/handout.html#module-structure > """module docstring""" > > # imports > # constants > # exception classes > # interface functions > # classes > # internal functions & classes > > def main(...): > ... > > if __name__ == '__main__': > status = main() > sys.exit(status) ) so that the file/module is both 1. callable from the OS commandline via, e.g., $ /path/to/cmdline.py 2. importable without mere import causing execution of the script's functionality, e.g., >>> sys.path.append('/path/to') >>> from cmdline import * >>> process_command_line(...) How to do this in R? TIA, Tom Roche <tom_ro...@pobox.com> ______________________________________________ R-help@r-project.org mailing list 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.