[Rd] bug in R environments? Was: [BioC] 'recursive default argument' error...

Oleg Sklyar
Tue, 12 Jun 2007 08:24:12 -0000

Dear developers,

has anyone experienced the problem described below? Is it a bug in
handling interrupts in R?

Best,
Oleg

-------- Original Message --------
Subject: Re: [BioC] 'recursive default argument' error in GOENTREZID2GO
From: Diego Diez <diez at kuicr.kyoto-u.ac.jp>

...steps that use to reach me to that point. It happens with any
environment, or at least annotation packages stored as environments.
I can't think of any reason why this happens but let me show you the
code:

> library(rae230a)
> xx <- as.list(rae230aENTREZID)
^C
> xx <- as.list(rae230aENTREZID)
Error in as.list(rae230aENTREZID) : recursive default argument reference

now, while the as.list() is working, cancel the process with control-
C, and after that, the mentioned error happens whenever you try to
repeat the process of transforming the environment to a list. The
cancel must be done soon after hitting return, I found one case when
delaying a little made me unable to reproduce the error. Other
environments found in the package are not affected (i.e.
rae230aSYMBOL, rae230aGENENAME, etc).

Going deeper to the problem, I found that canceling the environment
"loading" with any function reproduces the problem:

> is(rae230aSYMBOL)
^C
> is(rae230aSYMBOL)
Error in .class1(object) : recursive default argument
reference
> rae230aSYMBOL
Error: recursive default argument reference

By "loading" a mean that the first time I execute as.list
(rae230aSYMBOL) or is(rae230aSYMBOL) there is a delay which I assume
is the environment being loaded into memory. Any further execution of
the same commands will occur almost immediately.

So, why should I cancel an environment loading soon after trying to
load it? It happens that I was loading an environment inside a
function, ran the function and wanted to cancel the execution, thus,
the error appeared and the environemnt was unusable. Anyway, this
seems to me more an R related issue.

HTH,

Diego.


> sessionInfo()
R version 2.5.0 (2007-04-23)
powerpc-apple-darwin8.9.1

locale:
C

attached base packages:
[1] "stats"     "graphics"  "grDevices"
"utils"     "datasets"
"methods"
[7] "base"

other attached packages:
  rae230a
"1.16.0"
>



On Jun 11, 2007, at 11:27 PM, Seth Falcon wrote:

> "James W. MacDonald" <jmacdon at med.umich.edu> writes:
>
>> Hi Oleg,
>>
>> Oleg Sklyar wrote:
>>> Hi,
>>>
>>> anybody has an idea as for the following error, the example is
>>> actually
>>> from the GO package examples. Thanks, Oleg
>>>
>>>> library(GO)
>>>> egId <- "10043"
>>>> egIdGoData <- GOENTREZID2GO[[egId]]
>>> Error: recursive default argument reference
>>
>> I sometimes see that error as well. I have no idea what causes it,
>> as it
>> doesn't seem repeatable. Anyway, quitting R and starting over has
>> always
>> fixed the problem for me.
>
> Oleg, is this reproducible for you?  I wasn't able to get the error.
> Have you tried updating to R patched?
>
> + seth
>
> --
> Seth Falcon | Computational Biology | Fred Hutchinson Cancer
> Research Center
> http://bioconductor.org
>
> _______________________________________________
> Bioconductor mailing list
> Bioconductor at stat.math.ethz.ch
> https://stat.ethz.ch/mailman/listinfo/bioconductor
> Search the archives: http://news.gmane.org/
> gmane.science.biology.informatics.conductor

--
Dr Oleg Sklyar | EBI-EMBL, Cambridge CB10 1SD, UK | +44-1223-494466