From murdoch.duncan at gmail.com  Sun May 30 22:31:23 2010
From: murdoch.duncan at gmail.com (Duncan Murdoch)
Date: Sun, 30 May 2010 16:31:23 -0400
Subject: [Rd] Bug with ..0
In-Reply-To: <AANLkTilF5UNAM8BuWff2Id07CB2GlDKklgpthUOS-Ffc@mail.gmail.com>
References: <AANLkTimvfFmXKD0fQjp6786WR9FQRnvKDFMlIFT1wP-R@mail.gmail.com>
	<4C02BF2D.8050205@gmail.com>
	<AANLkTilF5UNAM8BuWff2Id07CB2GlDKklgpthUOS-Ffc@mail.gmail.com>
Message-ID: <4C02CB1B.2000808@gmail.com>

On 30/05/2010 3:44 PM, Gabor Grothendieck wrote:
> Note that ?Reserved lists ..1, ..2, to ..9 but does not list ..0.
>   

Which version are you looking at? Mine says "?..1?, ?..2? etc," In fact, 
the code just looks for the pattern of two dots followed by something 
that can be converted to a long; see isDDName in src/main/dstruct.c.
> Also, why is it reserved?  What is the future intended use?
>   

As far as I know, there is none. It is reserved simply because it 
follows the pattern of "..n". It would not be hard to make ..0 specially 
unreserved, but what would be the point?

Duncan Murdoch
> On Sun, May 30, 2010 at 3:40 PM, Duncan Murdoch
> <murdoch.duncan at gmail.com> wrote:
>   
>> On 30/05/2010 3:13 PM, Gabor Grothendieck wrote:
>>     
>>> This function call returns 3 but should return 32.  ..0 has no special
>>> significance in R as far I know yet it seems to be acting as if it
>>> were ..1 .  Comments?
>>>
>>>       
>> Actually, ..0 is a reserved symbol.  (This is just barely documented in the
>> R Language Defn, with more detail in R Internals.)  It stands for the
>> "zeroth element of ..."  That definition makes no sense (indexing of ...
>> starts at 1), so we should probably generate an error when you use it, and
>> perhaps when you try to redefine it by using it as an argument.  But this is
>> really a case of you doing something you shouldn't, and the error handling
>> not slapping you on the wrist.
>>
>> Duncan Murdoch
>>     
>>>       
>>>> ff <- function(..0, ...) ..0
>>>> ff(32, 3)
>>>>
>>>>         
>>> [1] 3
>>>
>>>
>>>       
>>>> R.version.string
>>>>
>>>>         
>>> [1] "R version 2.11.0 Patched (2010-04-26 r51822)"
>>>
>>>       
>>>> win.version()
>>>>
>>>>         
>>> [1] "Windows Vista (build 6002) Service Pack 2"
>>>
>>> ______________________________________________
>>> R-devel at r-project.org mailing list
>>> https://stat.ethz.ch/mailman/listinfo/r-devel
>>>
>>>       
>>



[Rd] Bug with ..0
Duncan Murdoch