R J. | 2021

A method for deriving information from running R code

 

Abstract


It is often useful to tap information from a running R script. Obvious use cases include monitoring the consumption of resources (time, memory) and logging. Perhaps less obvious cases include tracking changes in R objects orcollecting output of unit tests. In this paper we demonstrate an approach that abstracts collection and processing of such secondary information from the running R script. Our approach is based on a combination of three elements. The first element is to build a customized way to evaluate code. The second is labeled \\emph{local masking} and it involves temporarily masking auser-facing function so an alternative version of it is called. The third element we label \\emph{local side effect}. This refers to the fact that the masking function exports information to the secondary information flow without altering a global state. The result is a method for building systems in pure R that lets users create and control secondary flows of information with minimal impact on their workflow, and no global side effects.

Volume 13
Pages 42
DOI 10.32614/rj-2021-056
Language English
Journal R J.

Full Text