pryr provides tools to pry back the surface of R and dig into the details. It has been developed in conjunction with “Advanced R programming” to make it easier to understand what’s going on in R.
Install it from CRAN with install.packages("pryr").
pryr includes tools to:
Make it easier to understand the internal implementation of:
uneval(), is_promise(), promise_info()where(), rls(), parenv()unenclose()call_tree()typenames()copy-on-modify: address(), track_copy()
Inspect and understand R’s OO systems:
otype()Determine which OO system a function belongs to: ftype()
Make it easier to compute on the language:
make_function(), f()substitute_q(), and one that will substitute objects in the global environment, subs()modify_lang()dots() and named_dots() to get unevaluated ...partial()Find all functions matching some criteria: find_funs()
To use existing R tools more easily:
%<d-% and %<a-% for creating delayed or active bindings%<c-% for creating constants (locked bindings)rebind as a more user friendly version of <<-