Re: [R] R is GNU S, not C.... [was "how to get or store ....."]

From: Deepayan Sarkar <deepayan.sarkar_at_gmail.com>
Date: Thu 08 Dec 2005 - 12:15:52 EST

On 12/7/05, Jan T. Kim <jtk@cmp.uea.ac.uk> wrote:
> On Tue, Dec 06, 2005 at 04:21:01PM +0000, Patrick Burns wrote:
> > I don't put in extraneous ';' because I maybe get a
> > blister on my little finger.
> >
> > I suspect that those who find the semi-colons ugly in
> > R do not find them ugly in C. I think the reason there
> > would be a visceral reaction in R but not in C is that
> > there is a danger when using them in R that they really
> > mean something.
> >
> > We get questions on R-help often enough about why
> > code like:
> >
> > if(x > 0) y <- 4
> > else y <- 4.5e23
> >
> > doesn't work.
> >
> > If people habitually used semi-colons, those sorts of
> > questions would probably multiply.
>
> I don't understand. It would seem to me that in
>
> if (x > 0) y <- 4;
> else y <- 4.5e23;
>
> it's pretty obvious that the "if" statement is terminated by the
> semicolon at the end of the first line and that therefore, the "else"
> on the next line is erroneous because it is not associated with any
> "if".

Why is it obvious?

     if (x > 0) y = 4;
     else y = 4.5e23;

is perfectly legal C.

> At least, the version above fails consistently, i.e. regardless of
> context.

It fails for unrelated reasons.

   if (x > 0) { y <- 4; } else { y <- 4.5e23; }

doesn't fail.

-Deepayan

> On the other hand, I've studied the R Language Definition for
> quite some time before fully understanding why
>
> if (x > 0) y <- 4
> else y <- 4.5e23
>
> works inside of a function (or other enclosing block) while it does not
> work interactively (or at the top level of a script).
>
> Best regards, Jan
> --
> +- Jan T. Kim -------------------------------------------------------+
> | email: jtk@cmp.uea.ac.uk |
> | WWW: http://www.cmp.uea.ac.uk/people/jtk |
> *-----=< hierarchical systems are for files, not for humans >=-----*
>
> ______________________________________________
> R-help@stat.math.ethz.ch mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide!
> http://www.R-project.org/posting-guide.html
>



R-help@stat.math.ethz.ch mailing list
https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html Received on Thu Dec 08 12:21:10 2005

This archive was generated by hypermail 2.1.8 : Fri 03 Mar 2006 - 03:41:34 EST