On Sep 3, 2008, at 9:51 , EBo wrote:
While doing some embedded programming and trying to figure out how
to generate
a hand coded SEXP equivalent of the line
"t.test(x,conf.level=(1-p))$conf.int[2]" I had an idea for an
addition to the
embedded API.
There are a number of hidden or static parse functions (R_ParseBuffer,
R_Parse1Buffer, etc.) which take an IoBuffer* and returns a parsed
tree. If
one or more of these functions were exported to the Rembedded.h API
we could
do something like the following:
R_Expr = R_Parse1Buffer(&R_ConsoleIob, 0, &status);
if (PARSE_OK==status) {
...
value = eval(R_CurrentExpr, rho);
...
}
or possibly simplifying the interface to take the CMDL string:
R_Expr = R_Parse1Line("t.test(x,conf.level=(1-p))$conf.int[2]",
&status);
Why do you think is R_ParseVector not sufficient for this? That is
what most of use use to achieve exactly what you describe...
For something that even mimics the continuation behavior of the R
console have a look at parseString function in Rserve.
Cheers,
Simon
I think this would be a useful addition to the embedding interface,
and
hopefully not difficult to incorporate by someone more experienced
with the
internals than I currently am. I took a few hours to look into
adding this
interface, but will not have time to try to do so for a few months
-- I have a
couple of hard and fast deadlines over the next couple of weeks.
So, I would
like to make the suggestion and participate in the dialog.
Best regards,
EBo --
ps: if someone can suggest how to hand code
"t.test(x,conf.level=(1-p))$conf.int[2]" so I can embedd it I would
be most
appreciative.
______________________________________________
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel
______________________________________________
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel