Provide a locale for computations that can be shared among various functions.
USAGE:
new.frame(what = list(), protect = T)
OPTIONAL ARGUMENTS:
what:
optional list whose named components will initialize the
frame created by new.frame.
protect:
logical flag: if TRUE, the initial list will be copied into the new frame.
Only if this is done, can move.frame be called safely on the
resulting frame.
If you dont plan to use move.frame to pass the frame back to
another function, and what is large, then setting protect to FALSE
can save some space.
VALUE:
the numerical index in the evaluator of the frame created.
This number should be given to eval as the local= argument
to evaluate expressions in the new frame.
The purpose of new.frame is to provide a locale for computations
that can be shared among various functions.
DETAILS:
Creates an evaluation frame and returns the index of the new frame
in the vector of evaluation frames.