Re: [R] Variable passed to function not used in function in select=... in subset

From: Thomas Lumley <tlumley_at_u.washington.edu>
Date: Tue, 11 Nov 2008 11:48:04 -0800 (PST)

Some of the uses of non-standard evaluation are undoubtedly a problem in R. Probably the worst is in model.frame, because it is much harder to work around. I have never used subset(,select=) and hence have never been at risk of confusion (if you don't like how it works, I suggest you do the same), but model.frame() is inside lots of things.

  There are two issues here that I think are worth pointing out: 1/ Some things are just not fixable any more. They can only be fixed in a new language. The people thinking about new statistical languages mostly know what the problems are, because they have been using S and/or R for many years and it's really not that hard to notice the problems. The document on non-standard evaluation demonstrates that R-core is aware of this particular problem.

2/ There are some uses of non-standard evaluation that don't seem to confuse people, and an interesting question is how to characterise them. These are what I referred to as 'macro-like functions' in the document that you have already been referred to. For example, subset(,subset=) and with() don't seem to be as confusing or to cause problems for programmers in the same way. There is an empirical question as to what these relatively non-problematic constructs are, and a theoretical question as to why they are different. In particular, with() not only has non-standard evaluation, it is quite similar to the notoriously confusing attach().

         -thomas

On Tue, 11 Nov 2008, Wacek Kusnierczyk wrote:

> Berwin A Turlach wrote:
>> On Tue, 11 Nov 2008 09:27:41 +0100
>> Wacek Kusnierczyk <Waclaw.Marcin.Kusnierczyk_at_idi.ntnu.no> wrote:
>>
>>
>>> but then it might be worth asking whether carrying on with misdesign
>>> for backward compatibility outbalances guaranteed crashes in future
>>> users' programs, [...]
>>>
>>
>> Why is it worth asking this if nobody else asks it?
>
>
> i guess most of the people who do ask questions here care little about r
> itself, they just want it to solve a problem, even if it involves
> hacking the language.
>
> those outside the r team who care about language design have probably
> left the list long ago, if only they were subscribed. the fact that
> it's only me asking is no statistics. i do talk to people, and know
> many who'd ask, but they just don't care, because they have already
> trashed r. instead of discouraging me, make use of that i care to ask.
>
> vQ
>
> ______________________________________________
> 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.
>

Thomas Lumley			Assoc. Professor, Biostatistics
tlumley_at_u.washington.edu	University of Washington, Seattle

______________________________________________
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. Received on Tue 11 Nov 2008 - 19:51:40 GMT

Archive maintained by Robert King, hosted by the discipline of statistics at the University of Newcastle, Australia.
Archive generated by hypermail 2.2.0, at Tue 11 Nov 2008 - 20:30:24 GMT.

Mailing list information is available at https://stat.ethz.ch/mailman/listinfo/r-help. Please read the posting guide before posting to the list.

list of date sections of archive