[Rd] small syntax suggestion

ivo welch ivo.welch at gmail.com
Tue Aug 24 17:02:58 CEST 2010


hi ted, philippe, and others---I agree with everything you write about
good coding practice.    none of us would be writing x<-3, even when
we want to assign 3.  we know better.   we would at least use a space,
if not a paren.  alas, my suggestion is not so much for you.  It is
trying to spare novices that are just beginning to use R some
unnecessary frustration.   I bet that most of us have made this
mistake at least once.

to the extent that it requires a token "<-[0-9]" to recognize this, it
could be an easy special case/warning/error.  to the extent that it
requires more, it is probably not worth the hassle.

[I am a great fan of syntax checking.  I am not a great fan of many
but the simplest recycling rules (from 1 to N) BY DEFAULT.  It's just
asking for trouble.]

regards,

/iaw
----
Ivo Welch (ivo.welch at brown.edu, ivo.welch at gmail.com)




On Mon, Aug 23, 2010 at 4:27 PM, Philippe Grosjean
<phgrosjean at sciviews.org> wrote:
> I tell to my students that it is very important (not only for legibility) to
> place spaces between operands. They have to write such a code like this:
>
> if (x < -3) do_something
>
> That way, there is no ambiguity. Don't you think it's important to write
> clear code, including by using spaces where it makes it easier to read,...
> and less ambiguous, as you just realize?
>
> Best,
>
> Philippe Grosjean
>
> On 23/08/10 19:06, Davor Cubranic wrote:
>>
>> On 2010-08-23, at 6:15 AM, Barry Rowlingson wrote:
>>
>>> On Sun, Aug 22, 2010 at 4:33 PM, ivo welch<ivo.welch at gmail.com>  wrote:
>>>>
>>>> I have found that my students often make the mistake of
>>>> mixing up comparisons and assignments with negative numbers:
>>>>
>>>>  if (x<-3) do_something;
>>>
>>> If you tell your students not to use '<-' for assignment, then they
>>> can't make this mistake, because = for assignment has additional
>>> restrictions on it:
>>
>> The students are trying to *compare* to a negative number, and trip on R's
>> parsing of "<-". They could use '=' for assignment all they want (which I
>> thought is being discouraged as a code style these days, BTW), and they'll
>> still run into this problem.
>>
>> Davor
>> ______________________________________________
>> R-devel at r-project.org mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-devel
>>
>>
>



More information about the R-devel mailing list