Parser.R
From Organic Design wiki
- -------------------- Examples demonstrating the R parser -------------------- #
- Std input
- Std output & Std error
- The parser tries to evaluate the expression in the console (unless character)
# See also p 34 part-02.pdf (Ihakas 2006 workshop)
- ----------------------------------------------------------------------------- #
- expression() Creates or tests for objects of mode
- eval() Evaluate an R expression in a specified environment
- quote() Simply returns its argument. The argument is not evaluated and can be any R expression.
- evalq 'evalq' form is equivalent to 'eval(quote(expr), ...)'.
- substitute() Substituting and Quoting Expressions
- parse() Returns the parsed but unevaluated expressions in a list. Each element of the list is of mode 'expression'.
- deparse() Turn unevaluated expressions into character strings
x <- expression(1 + 0:9) x length(x) mode(x) eval(x)
x <-expression({a <- 1:10; a^2}) eval(x)
quote(x<1 & y>=10) quote(x) evalq(x) eval(quote(x)) # identical
- substitute allows env auxillary information
substitute(expression(a + b), list(a = 1))
example(parse) parse(text="x < b & y >= 3") x <- "x < b & y >= 3" parse(text=x)
eval(expression("x < b & y >= 3")) eval(expression(x))
- identical (fails if x, b, and y cannot be found)
eval(parse(text="x < b & y >= 3")) eval(parse(text=x))