[Bioc-devel] namespace question

Karim Mezhoud kmezhoud at gmail.com
Fri Apr 1 00:38:08 CEST 2016


I think "From" is needed to specify which package we want to exlude
functions.

I think  excludeFrom (package, function)  seems to be intuitive.

thanks,
Karim



On Thu, Mar 31, 2016 at 9:54 PM, Hervé Pagès <hpages at fredhutch.org> wrote:

> On 03/31/2016 12:55 PM, Michael Lawrence wrote:
>
>> Probably should just stick to exact symbols for now. If there is a
>> case where a pattern is actually useful, rather than just an
>> obfuscation, we can extend the feature set.
>>
>
> Fair enough. Not really intuitive that excludeImport uses the same
> syntax as (but does the opposite of) importFrom though. Maybe having
> the name of the directive start with "import" would help e.g.
>
> importExcept(hash, values)  # opposite of importFrom(hash, values)
>
> Thanks,
> H.
>
>
>
>> On Thu, Mar 31, 2016 at 12:11 PM, Zhu, Lihua (Julie)
>> <Julie.Zhu at umassmed.edu> wrote:
>>
>>> Herve,
>>>
>>> That is a very interesting idea and works for me! Thanks!
>>>
>>> importPatternFrom(IRanges, "^values$")
>>>
>>>
>>> Best,
>>>
>>> Julie
>>>
>>> On 3/31/16 2:51 PM, "Bioc-devel on behalf of Hervé Pagès"
>>> <bioc-devel-bounces at r-project.org on behalf of hpages at fredhutch.org>
>>> wrote:
>>>
>>> On 03/30/2016 08:35 PM, Michael Lawrence wrote:
>>>>
>>>>> That would work, but R is not going to be happy about redundant
>>>>> imports. Interactively, users would balk at symbol qualification.
>>>>>
>>>>> There are two classes of conflict:
>>>>> 1) Same semantics, where a common generic would arbitrate, or one
>>>>> package could depend on the other, and
>>>>> 2) Different semantics, in which case one of the functions should
>>>>> probably be renamed, although that might not be practical or easy to
>>>>> agree upon.
>>>>>
>>>>> When those approaches fail, qualification is the only recourse.
>>>>>
>>>>> I will think about adding an excludeImport() or importAs().
>>>>>
>>>>
>>>> What about having something like an importPatternFrom() directive
>>>> similar to the exportPattern() directive and have these directives
>>>> support some of the grep() toggles like 'ignore.case', 'fixed',
>>>> 'invert' etc... ?
>>>>
>>>> Then Julie could just do:
>>>>
>>>> importPatternFrom(hash, "^values$", invert=TRUE)
>>>>
>>>> H.
>>>>
>>>>
>>>>>
>>>>> On Wed, Mar 30, 2016 at 8:20 PM, Robert M. Flight <rflight79 at gmail.com
>>>>> >
>>>>> wrote:
>>>>>
>>>>>> In the cases of having conflicting names, is it not appropriate then
>>>>>> to use
>>>>>> the "package::function" form for calling a particular function?
>>>>>>
>>>>>> On Wed, Mar 30, 2016 at 11:14 PM Michael Lawrence
>>>>>> <lawrence.michael at gene.com>
>>>>>> wrote:
>>>>>>
>>>>>> I can't find the hash function in IRanges. Are you sure it has one?
>>>>>>>
>>>>>>> On Wed, Mar 30, 2016 at 8:07 PM, Zhu, Lihua (Julie)
>>>>>>> <Julie.Zhu at umassmed.edu> wrote:
>>>>>>>
>>>>>>>> Michael,
>>>>>>>>
>>>>>>>> I have the same user case as Kasper. Another example is that both
>>>>>>>> IRanges
>>>>>>>> and hash packages have hash. I need to use the hash from the hash
>>>>>>>> package
>>>>>>>> instead of the one from IRanges.
>>>>>>>>
>>>>>>>> Best,
>>>>>>>>
>>>>>>>> Julie
>>>>>>>>
>>>>>>>> On Mar 30, 2016, at 7:57 PM, Kasper Daniel Hansen
>>>>>>>> <kasperdanielhansen at gmail.com> wrote:
>>>>>>>>
>>>>>>>> My usecase is when I import() two packages who has a conflict in a
>>>>>>>> name.
>>>>>>>> For example, both Biobase and matrixStats has both anyMissing and
>>>>>>>> rowMedians. I am happy to get all of these two packages, but I need
>>>>>>>> to
>>>>>>>> resolve the conflict.  Since I want to keep the ones from
>>>>>>>> matrixStats I
>>>>>>>>
>>>>>>> know
>>>>>>>
>>>>>>>> need to figure out how to import Biobase selectively.  Which I can,
>>>>>>>> using
>>>>>>>> the tools from codetoolsBioC, but I would also be happy with an
>>>>>>>> importFromExcept(), which would make my life much easier.
>>>>>>>>
>>>>>>>> Best,
>>>>>>>> Kasper
>>>>>>>>
>>>>>>>> On Wed, Mar 30, 2016 at 4:47 PM, Michael Lawrence
>>>>>>>> <lawrence.michael at gene.com> wrote:
>>>>>>>>
>>>>>>>>>
>>>>>>>>> I'm curious about which symbols you wouldn't want to import, and
>>>>>>>>> why.
>>>>>>>>>
>>>>>>>>> On Wed, Mar 30, 2016 at 12:19 PM, Zhu, Lihua (Julie)
>>>>>>>>> <Julie.Zhu at umassmed.edu> wrote:
>>>>>>>>>
>>>>>>>>>> Hi,
>>>>>>>>>>
>>>>>>>>>> Is there a function to import all the exported objects from a
>>>>>>>>>> package
>>>>>>>>>> except a few named ones in NAMESPACE file?
>>>>>>>>>>
>>>>>>>>>> For example, I would like to import all the functions in S4Vectors
>>>>>>>>>> except fold. Is there a way to  specify this without listing all
>>>>>>>>>> other
>>>>>>>>>> functions using importFrom?
>>>>>>>>>>
>>>>>>>>>> Many thanks for your help!
>>>>>>>>>>
>>>>>>>>>> Best regards,
>>>>>>>>>>
>>>>>>>>>> Julie
>>>>>>>>>>
>>>>>>>>>> ********************************************
>>>>>>>>>> Lihua Julie Zhu, Ph.D
>>>>>>>>>> Research Professor
>>>>>>>>>> Department of Molecular, Cell and Cancer Biology (MCCB)
>>>>>>>>>> Head of MCCB Bioinformatics Core
>>>>>>>>>> Program in Molecular Medicine
>>>>>>>>>> Program in Bioinformatics and Integrative Biology
>>>>>>>>>> University of Massachusetts Medical School
>>>>>>>>>> 364 Plantation Street, Room 613
>>>>>>>>>> Worcester, MA 01605
>>>>>>>>>> 508-856-5256 phone
>>>>>>>>>> (508) 856 5460 fax
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>
>>>>>>> http://profiles.umassmed.edu/profiles/ProfileDetails.aspx?From=SE&Perso
>>>>>>> n=1134
>>>>>>>
>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>           [[alternative HTML version deleted]]
>>>>>>>>>>
>>>>>>>>>> _______________________________________________
>>>>>>>>>> Bioc-devel at r-project.org mailing list
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> https://urldefense.proofpoint.com/v2/url?u=https-3A__stat.ethz.ch_ma
>>>>>>>>>>
>>>>>>>>>> ilman_listinfo_bioc-2Ddevel&d=BQIF-g&c=WJBj9sUF1mbpVIAf3biu3CPHX4MeR
>>>>>>>>>>
>>>>>>>>>> jY_w4DerPlOmhQ&r=3IbW-yoIQpGZOKgd4i2bgmPHhwHHF5gJMlij5cC5bLU&m=Rxzbh
>>>>>>>>>>
>>>>>>>>>> vEdYoq-VrN42rfiK5-UIIwjUIHLTQjy9s7-pzs&s=TmgPkRkAcsTjcIVvzaBFADs-tx8
>>>>>>>>>> CzeHHAAJ5kmgmJxQ&e=
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>> _______________________________________________
>>>>>>>>> Bioc-devel at r-project.org mailing list
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> https://urldefense.proofpoint.com/v2/url?u=https-3A__stat.ethz.ch_mai
>>>>>>>>>
>>>>>>>>> lman_listinfo_bioc-2Ddevel&d=BQIF-g&c=WJBj9sUF1mbpVIAf3biu3CPHX4MeRjY
>>>>>>>>>
>>>>>>>>> _w4DerPlOmhQ&r=3IbW-yoIQpGZOKgd4i2bgmPHhwHHF5gJMlij5cC5bLU&m=RxzbhvEd
>>>>>>>>>
>>>>>>>>> Yoq-VrN42rfiK5-UIIwjUIHLTQjy9s7-pzs&s=TmgPkRkAcsTjcIVvzaBFADs-tx8CzeH
>>>>>>>>> HAAJ5kmgmJxQ&e=
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> Bioc-devel at r-project.org mailing list
>>>>>>>
>>>>>>>
>>>>>>> https://urldefense.proofpoint.com/v2/url?u=https-3A__stat.ethz.ch_mailm
>>>>>>>
>>>>>>> an_listinfo_bioc-2Ddevel&d=BQIF-g&c=WJBj9sUF1mbpVIAf3biu3CPHX4MeRjY_w4D
>>>>>>>
>>>>>>> erPlOmhQ&r=3IbW-yoIQpGZOKgd4i2bgmPHhwHHF5gJMlij5cC5bLU&m=RxzbhvEdYoq-Vr
>>>>>>>
>>>>>>> N42rfiK5-UIIwjUIHLTQjy9s7-pzs&s=TmgPkRkAcsTjcIVvzaBFADs-tx8CzeHHAAJ5kmg
>>>>>>> mJxQ&e=
>>>>>>>
>>>>>>>
>>>>>>           [[alternative HTML version deleted]]
>>>>>>
>>>>>> _______________________________________________
>>>>>> Bioc-devel at r-project.org mailing list
>>>>>>
>>>>>>
>>>>>> https://urldefense.proofpoint.com/v2/url?u=https-3A__stat.ethz.ch_mailma
>>>>>>
>>>>>> n_listinfo_bioc-2Ddevel&d=BQIF-g&c=WJBj9sUF1mbpVIAf3biu3CPHX4MeRjY_w4Der
>>>>>>
>>>>>> PlOmhQ&r=3IbW-yoIQpGZOKgd4i2bgmPHhwHHF5gJMlij5cC5bLU&m=RxzbhvEdYoq-VrN42
>>>>>>
>>>>>> rfiK5-UIIwjUIHLTQjy9s7-pzs&s=TmgPkRkAcsTjcIVvzaBFADs-tx8CzeHHAAJ5kmgmJxQ
>>>>>> &e=
>>>>>>
>>>>>
>>>>> _______________________________________________
>>>>> Bioc-devel at r-project.org mailing list
>>>>>
>>>>>
>>>>> https://urldefense.proofpoint.com/v2/url?u=https-3A__stat.ethz.ch_mailman
>>>>>
>>>>> _listinfo_bioc-2Ddevel&d=BQIF-g&c=WJBj9sUF1mbpVIAf3biu3CPHX4MeRjY_w4DerPl
>>>>>
>>>>> OmhQ&r=3IbW-yoIQpGZOKgd4i2bgmPHhwHHF5gJMlij5cC5bLU&m=RxzbhvEdYoq-VrN42rfi
>>>>>
>>>>> K5-UIIwjUIHLTQjy9s7-pzs&s=TmgPkRkAcsTjcIVvzaBFADs-tx8CzeHHAAJ5kmgmJxQ&e=
>>>>>
>>>>>
>>>> --
>>>> Hervé Pagès
>>>>
>>>> Program in Computational Biology
>>>> Division of Public Health Sciences
>>>> Fred Hutchinson Cancer Research Center
>>>> 1100 Fairview Ave. N, M1-B514
>>>> P.O. Box 19024
>>>> Seattle, WA 98109-1024
>>>>
>>>> E-mail: hpages at fredhutch.org
>>>> Phone:  (206) 667-5791
>>>> Fax:    (206) 667-1319
>>>>
>>>> _______________________________________________
>>>> Bioc-devel at r-project.org mailing list
>>>>
>>>> https://urldefense.proofpoint.com/v2/url?u=https-3A__stat.ethz.ch_mailman_
>>>>
>>>> listinfo_bioc-2Ddevel&d=BQIF-g&c=WJBj9sUF1mbpVIAf3biu3CPHX4MeRjY_w4DerPlOm
>>>>
>>>> hQ&r=3IbW-yoIQpGZOKgd4i2bgmPHhwHHF5gJMlij5cC5bLU&m=RxzbhvEdYoq-VrN42rfiK5-
>>>> UIIwjUIHLTQjy9s7-pzs&s=TmgPkRkAcsTjcIVvzaBFADs-tx8CzeHHAAJ5kmgmJxQ&e=
>>>>
>>>
>>>
> --
> Hervé Pagès
>
> Program in Computational Biology
> Division of Public Health Sciences
> Fred Hutchinson Cancer Research Center
> 1100 Fairview Ave. N, M1-B514
> P.O. Box 19024
> Seattle, WA 98109-1024
>
> E-mail: hpages at fredhutch.org
> Phone:  (206) 667-5791
> Fax:    (206) 667-1319
>
> _______________________________________________
> Bioc-devel at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/bioc-devel

	[[alternative HTML version deleted]]



More information about the Bioc-devel mailing list