[Rd] Runnable R packages
Rainer M Krug
R@|ner @end|ng |rom krug@@de
Fri Feb 8 09:41:50 CET 2019
Sounds interesting. Do you have it on GitHub or similar?
Rainer
> On 8 Feb 2019, at 09:09, David Lindelof <lindelof using ieee.org> wrote:
>
> Yesterday I wrote and submitted to CRAN a package `run`, which implements
> the ideas discussed in this thread. Given a package tarball
> foo_0.1.0.tar.gz, users will be able to run
>
> Rscript -e "run::run('foo_0.1.0.tar.gz')"
>
> which will pull all the dependencies of package `foo`, lookup a function
> `main` in that package's namespace, and call it.
>
> It's an early draft but I'd appreciate any feedback (once its submission is
> accepted, of course).
>
> Thanks all for your help and advice,
>
> David
>
> On Sat, Feb 2, 2019 at 3:37 PM Duncan Murdoch <murdoch.duncan using gmail.com>
> wrote:
>
>> On 02/02/2019 8:27 a.m., Barry Rowlingson wrote:
>>> I don't think anyone denies that you *could* make an EXE to do all
>>> that. The discussion is on *how easy* it should be to create a single
>>> file that contains an initial "main" function plus a set of bundled
>>> code (potentially as a package) and which when run will install its
>>> package code (which is contained in itself, its not in a repo),
>>> install dependencies, and run the main() function.
>>>
>>> Now, I could build a self-executable shar file that bundled a package
>>> together with a script to do all the above. But if there was a "RUN"
>>> command in R, and a convention that a function called "foo::main"
>>> would be run by `R CMD RUN foo_1.1.1.tar.gz` then it would be so much
>>> easier to develop and test.
>>
>> I don't believe the "so much easier" argument that this requires a
>> change to base R. If you put that functionality into a package, then
>> the only extra effort the user would require is to install that other
>> package. After that, they could run
>>
>> Rscript -e "yourpackage::run_main('foo_1.1.1.tar.gz')"
>>
>> as I suggested before. This is no harder than running
>>
>> R CMD RUN foo_1.1.1.tar.gz
>>
>> The advantage of this from R Core's perspective is that you would be
>> developing and maintaining "yourpackage", you wouldn't be passing the
>> burden on to them. The advantage from your perspective is that you
>> could work with whatever packages you liked. The "remotes" package has
>> almost everything you need so that "yourpackage" could be nearly
>> trivial. You wouldn't need to duplicate it within base R.
>>
>> Duncan Murdoch
>>
>>>
>>> If people think this adds value, then if they want to offer that value
>>> to me as $ or £, I'd consider writing it if their total value was more
>>> than my cost....
>>>
>>> Barry
>>>
>>>
>>> On Sat, Feb 2, 2019 at 12:54 AM Abs Spurdle <spurdle.a using gmail.com> wrote:
>>>>
>>>> Further to my previous post,
>>>> it would be possible to create an .exe file, say:
>>>>
>>>> my_r_application.exe
>>>>
>>>> That starts R, loads your R package(s), calls the R function of your
>> choice
>>>> and does whatever else you want.
>>>>
>>>> However, I don't think that it would add much value.
>>>> But feel free to correct me if you think that I'm wrong.
>>>>
>>>> [[alternative HTML version deleted]]
>>>>
>>>> ______________________________________________
>>>> R-devel using r-project.org mailing list
>>>> https://stat.ethz.ch/mailman/listinfo/r-devel
>>>
>>> ______________________________________________
>>> R-devel using r-project.org mailing list
>>> https://stat.ethz.ch/mailman/listinfo/r-devel
>>>
>>
>> ______________________________________________
>> R-devel using r-project.org mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-devel
>>
>
> [[alternative HTML version deleted]]
>
> ______________________________________________
> R-devel using r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-devel
--
Rainer M. Krug, PhD (Conservation Ecology, SUN), MSc (Conservation Biology, UCT), Dipl. Phys. (Germany)
Department of Evolutionary Biology and Environmental Studies
University of Zürich
Office Y34-J-74
Winterthurerstrasse 190
8075 Zürich
Switzerland
Office: +41 (0)44 635 47 64
Cell: +41 (0)78 630 66 57
email: Rainer.Krug using uzh.ch
Rainer using krugs.de
Skype: RMkrug
PGP: 0x0F52F982
[[alternative HTML version deleted]]
More information about the R-devel
mailing list