From thierry.onkelinx at inbo.be  Mon Nov 16 22:42:02 2015
From: thierry.onkelinx at inbo.be (Thierry Onkelinx)
Date: Mon, 16 Nov 2015 22:42:02 +0100
Subject: [Rd] Best way to implement optional functions?
In-Reply-To: <564A4460.4090105@gmail.com>
References: <56293F15.80509@gmail.com>
	<CAPp_+=di7F_JfbbL2eLk_XM9RXrL=1-sw=gO0o+42donMQ7WwQ@mail.gmail.com>
	<564A4460.4090105@gmail.com>
Message-ID: <CAJuCY5ypwAYfXJKoSOyZRG6Ndy3bQH35hB5fkJp86g=HvbCMuQ@mail.gmail.com>

Roxygen2 documents imported and re-exported functions. See
http://www.r-bloggers.com/roxygen2-5-0-0/

Best regards,

ir. Thierry Onkelinx
Instituut voor natuur- en bosonderzoek / Research Institute for Nature and
Forest
team Biometrie & Kwaliteitszorg / team Biometrics & Quality Assurance
Kliniekstraat 25
1070 Anderlecht
Belgium

To call in the statistician after the experiment is done may be no more
than asking him to perform a post-mortem examination: he may be able to say
what the experiment died of. ~ Sir Ronald Aylmer Fisher
The plural of anecdote is not data. ~ Roger Brinner
The combination of some data and an aching desire for an answer does not
ensure that a reasonable answer can be extracted from a given body of data.
~ John Tukey

2015-11-16 22:02 GMT+01:00 Duncan Murdoch <murdoch.duncan at gmail.com>:

> On 16/11/2015 4:00 AM, Richard Cotton wrote:
>
>> On 22 October 2015 at 22:55, Duncan Murdoch <murdoch.duncan at gmail.com>
>> wrote:
>>
>>> I'm planning on adding some new WebGL functionality to the rgl package,
>>> but
>>> it will pull in a very large number of dependencies. Since many people
>>> won't
>>> need it, I'd like to make the new parts optional.
>>>
>>
>> Can people suggest other packages that solve this kind of problem in a
>>> good
>>> way?
>>>
>>
>> I had the same issue with the assertive package: it was getting big,
>> and not everyone wanted all the functionality.
>>
>> The solution was to create several smaller packages with individual
>> components of functionality, for example assertive.base contains the
>> bare-minimum functionality; assertive.numbers contains functionality
>> related to numbers, etc.
>>
>> Then the assertive package imports all the functions from the
>> component packages and reexports them.
>>
>> That way people who want a small footprint (mostly other package
>> developers) can specify only what they need, and people who don't care
>> (mostly end users) can just type library(assertive) and get access to
>> everything.
>>
>>
> When you import and re-export functions, do they need to be documented in
> both places?  I forget if we have a simple way to say "this function is
> documented in that package", to avoid duplication.
>
> Duncan Murdoch
>
>
> ______________________________________________
> R-devel at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-devel
>

	[[alternative HTML version deleted]]



[Rd] Best way to implement optional functions?
Thierry Onkelinx