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

From: Thomas Lumley <>
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().


On Tue, 11 Nov 2008, Wacek Kusnierczyk wrote:

> Berwin A Turlach wrote:
>> On Tue, 11 Nov 2008 09:27:41 +0100
>> Wacek Kusnierczyk <> 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
> ______________________________________________
> mailing list
> PLEASE do read the posting guide
> and provide commented, minimal, self-contained, reproducible code.

Thomas Lumley			Assoc. Professor, Biostatistics	University of Washington, Seattle

______________________________________________ mailing list PLEASE do read the posting guide 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 Please read the posting guide before posting to the list.

list of date sections of archive