[R] R annoyances

bogdan romocea br44114 at gmail.com
Fri May 20 15:20:05 CEST 2005


On 20-May-05 Uwe Ligges wrote:
> All possible changes to T/F (both removing the meaning of 
> TRUE/FALSE in a clean session and making them reserved words) 
> would break code of lots of users.

Just wanted to point out that there's another (darker) side to this:
code that produces bad results without the users even realizing it.
Personally, I would clearly prefer lots of broken code to mistakes
caused by T/TRUE and F/FALSE.

Hypothetically, if whatever=T/F were forbidden and only
whatever=TRUE/FALSE were allowed, all the code could be fixed with a
simple sed script:
for F in `ls *.r`
do 
  mv $F $F.$$ 
  sed -e 's/=T,/=TRUE,/g' -e 's/=F,/=FALSE,/g' -e 's/=T)/=TRUE)/g' -e
's/=F)/=FALSE)/g' $F.$$ > $F
  rm $F.$$
done



-----Original Message-----
From: Uwe Ligges [mailto:ligges at statistik.uni-dortmund.de]
Sent: Friday, May 20, 2005 2:39 AM
To: John Fox
Cc: r-help at stat.math.ethz.ch
Subject: Re: [R] R annoyances


Dear John,

I have not expected to cause that many traffic and largish discussion.

What I tried to point out is that:
- a "programmer" should know that one has to use TRUE / FALSE in code in 
order to make it work generaly which is also checked by R CMD check.
- a "user" simply typing some lines in order to look at the data can 
shortly write T or F instead.

where "programmer" and "user" are not well defined and probably 
undistinguishable according to Chambers (1998).
I'd call people using [..., drop=FALSE] "programmer" here, since the 
code is probably used inside functions.

S-PLUS compatibility (T/F) has to be considered as well.

All possible changes to T/F (both removing the meaning of TRUE/FALSE in 
a clean session and making them reserved words) would break code of lots 
of users. With a common amount of statistical uncertainty I think it 
might be too late for changes ...

Best,
Uwe



John Fox wrote:
> Dear Uwe,
> 
> I've often wondered why T and F aren't reserved words in R as TRUE and FALSE
> are. Perhaps there's some use of T and F as variables, but that seems
> ill-advised.
> 
> Regards,
>  John
> 
> --------------------------------
> John Fox
> Department of Sociology
> McMaster University
> Hamilton, Ontario
> Canada L8S 4M4
> 905-525-9140x23604
> http://socserv.mcmaster.ca/jfox 
> -------------------------------- 
> 
> 
>>-----Original Message-----
>>From: r-help-bounces at stat.math.ethz.ch 
>>[mailto:r-help-bounces at stat.math.ethz.ch] On Behalf Of Uwe Ligges
>>Sent: Thursday, May 19, 2005 10:08 AM
>>To: Chalasani, Prasad
>>Cc: r-help at stat.math.ethz.ch
>>Subject: Re: [R] R annoyances
>>
>>Chalasani, Prasad wrote:
>>
>>
>>>Thanks all for pointing out that I can use 
>>>	mtx[,1,drop=F]
>>
>>
>>Which, for example, won't work for
>>  F <- 10.25
>>
>>---> drop=FALSE  !
>>           ^^^^^
>>
>>Uwe Ligges
>>
>>
>>
>>




More information about the R-help mailing list