On Sat, Feb 20, 2010 at 9:52 AM, Gabor Grothendieck <ggrothendi...@gmail.com> wrote: > In ?Syntax [ is given as higher priority than $ but BOD$demand[3] > seems to be the same as (BOD$demand)[3] contrary to [ being higher > priority. > >> BOD$demand[3] > [1] 19 >> (BOD$demand)[3] > [1] 19 > > What is the rule being used here?
I think its the parser rule that defines the syntax of $ on a list. Does: BOD$(demand[3]) even work? > BOD$(demand[3]) Error: unexpected '(' in "BOD$(" - no. The parser sees a $ and then gets the next token (gram.y shows this to be a symbol or a string constant) as the thing to deal with. Symbols I can't think of an example where $ and [ could have ambiguous precedence that is syntactically correct, so maybe the order is irrelevant... Just for fun: > x=list(a=1,b=2) > x$"a[1]"=2 > x$"a[1]" [1] 2 > x$a[1] [1] 1 Barry ______________________________________________ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel