Re: [Rd] Embedding R and registering routines

From: Simon Urbanek <>
Date: Tue, 01 May 2007 21:13:18 -0400


On May 1, 2007, at 5:59 PM, Seth Falcon wrote:

> Simon Urbanek <> writes:
>> Duncan,
>> are you going to take care of this? I have a quick solution for R-
>> devel that adds a special entry if requested.
>> I'm not quite convinced that we need as much flexibility as adding
>> arbitrary DllInfos, because the embedding application is a really
>> special concept (everything else is dynamically loaded except for
>> the application). In a sense "base" does that for non-embedded R
>> and the distinction is that it doesn't allow dynamic lookup. I
>> don't think adding arbitrary DllInfos is wise, because we would
>> have to expose DLL handles etc. - do we really want to do that?
>> And as for adding NULL-handle DLLInfos, there is only one
>> legitimate use and that is the embedding application, so anything
>> else looks more like abuse to me... (just lazy solution to not
>> have to determine the dll). Also the embedded DllInfo cannot be
>> unloaded by design, so it doesn't need anything complicated...
> Perhaps I'm not understanding the issues at hand, but I think there
> are other use cases for a mechanism accessible to package
> developers to dynamically register routines. Just as R can load
> packages to make new routines available, I don't see why an R
> package should not be able to provide an analogous plugin mechanism
> of its own.

That is a different issue - packages are free to register any routines as they already have a DllInfo entry in the current implementation. What we are talking about here is the embedded case where the embedding application doesn't have a DllInfo because it's loading R and not vice versa, so it cannot register anything.

Simon mailing list Received on Wed 02 May 2007 - 02:24:14 GMT

Archive maintained by Robert King, hosted by the discipline of statistics at the University of Newcastle, Australia.
Archive generated by hypermail 2.2.0, at Wed 02 May 2007 - 05:33:12 GMT.

Mailing list information is available at Please read the posting guide before posting to the list.