[R] Naming conventions for R?

Greg Snow Greg.Snow at imail.org
Fri Dec 4 20:16:31 CET 2009


This is historical and compatibility.  The story as I heard it is that on the computer where the original S language was developed had a key that produced a left pointing arrow and that was used as the assignment operator (later <- was added as an alternative for other computer systems).  When keyboards became more standardized, the equivalent key was '_' and so that became the assignment operator.  When I first started learning S (before most of my current students were born) we did all the assignments using '_' like:

> x _ 3

Rather than the preferred

> x <- 3

It did not take long for the aesthetics (and other reasons) to get me to start using the preferred '<-' method.

About 10 years ago it was decided to allow '=' as an alternative where unambiguous (but us purists still like '<-' better) and '_' started to lose any need to be used anymore.  Currently S+ still allows '_' for assignment, but gives a warning that it is deprecated (at least as of 8.1, which is the latest version that I have, I don't know if 8.2 is out yet) and R has stopped allowing '_' for assignment and allows it to be used in variable names.

So, you can use names like some_variable in R, but if you try to port that code to S+ or older versions of R that will be parsed as assign the value of variable to some, not as a single variable name.  And as far as conventions go, I expect that most (if not all) of R core are more like me in having developed their programming habits/conventions when '_' was an operator, not a valid part of a variable name.

While it is probably possible to teach old dogs new tricks, I prefer being productive (and having R core produce the great code that they are) to spending that time changing to satisfy the whims of a new generation.

-- 
Gregory (Greg) L. Snow Ph.D.
Statistical Data Center
Intermountain Healthcare
greg.snow at imail.org
801.408.8111


> -----Original Message-----
> From: r-help-bounces at r-project.org [mailto:r-help-bounces at r-
> project.org] On Behalf Of Peng Yu
> Sent: Thursday, December 03, 2009 7:47 PM
> To: r-help at stat.math.ethz.ch
> Subject: Re: [R] Naming conventions for R?
> 
> On Thu, Dec 3, 2009 at 8:27 PM, Sharpie <chuck at sharpsteen.net> wrote:
> >
> >
> > pengyu.ut wrote:
> >>
> >> There are documents for naming conventions for other languages. I'm
> >> wondering if there is a document that clearly describes the
> >> recommended naming convention for R.
> >>
> >
> >
> > You should browse this thread:
> >
> >  http://n4.nabble.com/Google-s-R-Style-Guide-td901694.html#a901694
> >
> > It was a pretty thorough discussion of style different guides for R.
> 
> Why variables has to be of the form some.variable but not
> some_variable?
> 
> I have my local convention of having the file names and the variable
> names following the same convention, for the reason that I may save a
> variable in a file and it is easier to find the variable if the
> variable and the file name follow the same convention. For example,
> 
> save(list='x_x_x', file='x_x_x.RData')
> 
> I other programming language like C++, there is no confusion
> introduced by having the same convention on file names and variables.
> I'm wondering why a different convention is chosen for R.
> 
> ______________________________________________
> R-help at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-
> guide.html
> and provide commented, minimal, self-contained, reproducible code.




More information about the R-help mailing list