%=>% would have precendence ('order of operations') problems also. A + B %=>% C
is equivalent to A + ( B %=>% C) and I don't think that is what you want. as.list(quote(A + B %=>% C)) shows the first branch in the parse tree. The following function, str.language, shows the entire parse tree, as in > str.language(quote(A + B %=>% C)) `quote(A + B %=>% C)` call(3): A + B %=>% C `` name(1): + `` name(1): A `` call(3): B %=>% C `` name(1): %=>% `` name(1): B `` name(1): C str.language <- function (object, ..., level = 0, name = myDeparse(substitute(object))) { abbr <- function(string, maxlen = 25) { if (length(string) > 1 || nchar(string) > maxlen) paste(substring(string[1], 1, maxlen), "...", sep = "") else string } myDeparse <- function(object) { if (!is.environment(object)) { deparse(object) } else { ename <- environmentName(object) if (ename == "") ename <- "<unnamed env>" paste(sep = "", "<", ename, "> ", paste(collapse = " ", objects(object))) } } cat(rep(" ", level), sep = "") if (is.null(name)) name <- "" cat(sprintf("`%s` %s(%d): %s\n", abbr(name), class(object), length(object), abbr(myDeparse(object)))) a <- attributes(object) if (is.recursive(object) && !is.environment(object)) { object <- as.list(object) names <- names(object) for (i in seq_along(object)) { str.language(object[[i]], ..., level = level + 1, name = names[i]) } } a$names <- NULL if (length(a) > 0) { str.language(a, level = level + 1, name = paste("Attributes of", abbr(name))) } } Bill Dunlap TIBCO Software wdunlap tibco.com On Tue, Apr 12, 2016 at 11:59 PM, Adrian Dușa <dusa.adr...@unibuc.ro> wrote: > I suppose it would work, although "=>" is rather a descriptive symbol and > less a function. > But choosing between quoting: > "A + B => C" > and a regular function: > A + B %=>% C > probably quoting is the most straightforward, as the result of the foo() > function has to be a string anyways (which is parsed by other functions). > > On Tue, Apr 12, 2016 at 6:20 PM, Richard M. Heiberger <r...@temple.edu> > wrote: > > > Would making it regular function %=>%, using "%" instead of quotes, > > work for you? > > > > On Tue, Apr 12, 2016 at 11:09 AM, Adrian Dușa <dusa.adr...@unibuc.ro> > > wrote: > > > On Tue, Apr 12, 2016 at 2:08 PM, Duncan Murdoch < > > murdoch.dun...@gmail.com> > > > wrote: > > >> [...] > > >> > > >> It never gets to evaluating it. It is not a legal R statement, so the > > > parser signals an error. > > >> If you want to pass arbitrary strings to a function, you need to put > > them > > > in quotes. > > > > > > I see. I thought it was parsed inside the function, but if it's parsed > > > before then quoting is the only option. > > > > > > > > > To Keith: no, I mean it like this "A + B => C" which is translated as: > > > "the union of A and B is sufficient for C" in set theoretic language. > > > > > > The "=>" operator means sufficiency, while "<=" means necessity. > Quoting > > > the expression is good enough, I was just curious if the quotes could > be > > > made redundant, somehow. > > > > > > Thank you both, > > > Adrian > > > > > > -- > > > Adrian Dusa > > > University of Bucharest > > > Romanian Social Data Archive > > > Soseaua Panduri nr.90 > > > 050663 Bucharest sector 5 > > > Romania > > > > > > [[alternative HTML version deleted]] > > > > > > ______________________________________________ > > > R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see > > > 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. > > > > > > -- > Adrian Dusa > University of Bucharest > Romanian Social Data Archive > Soseaua Panduri nr.90 > 050663 Bucharest sector 5 > Romania > > [[alternative HTML version deleted]] > > ______________________________________________ > R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see > 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. [[alternative HTML version deleted]] ______________________________________________ R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see 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.