[Rd] Computer algebra in R - would that be an idea??

Søren Højsgaard
Fri, 15 Jul 2005 00:21:00 -0000

Perhaps, this is the wrong mailing list, but I've been thinking about
calling e.g. maxima from R through some kind of wrapper. On windows, maxima can
be invoked through a file called maxima.bat which opens a simple 'dos
terminal' in which maxima is running. A simple way of interfacing R and
maxima would be through a function which 'copies' a text string into
such a dos terminal with maxima running and copies the output back into R. That
particular task is something which one might want to be able to do with several
other programs too... A way of doing this would be through the system() and/or
shell() functions where input and output can be redirected to/from the program
called, e.g. maxima. The problem is, that system()/shell() will start maxima,
execute the submitted code and terminate maxima. As I understand it, RDCOMClient
provides a way of getting a 'handle' on such a program provided that the
program is written in a specific way - something to do with COM. However, I
wonder if it would be possible to write a general R function, (e.g. called
dynamicshell()) which would provide a handle on such an application and to which
one could send commands and retrieve output without shutting the application
down. That is, essentially, a programatic form of 'copy and paste' in
two directions... Is there anything in the way R is constructed that prevents
that such a function could be written, and if so can anyone explain to me why
and/or point me to a reference explaining why.

Best regards
S?ren

________________________________

Fra: Simon Blomberg [mailto:Simon.Blomberg at anu.edu.au]
Sendt: on 13-07-2005 04:42
Til: Gabor Grothendieck; S?ren H?jsgaard
Cc: Duncan Murdoch; r-devel at stat.math.ethz.ch
Emne: Re: [Rd] Computer algebra in R - would that be an idea??



Another approach might be to construct a wrapper for Aldor code, along the
lines of .Fortran and .C. Aldor is the extension language for AXIOM
http://www.aldor.org/, and there is a symbolic algebra library available
for Aldor http://www-sop.inria.fr/cafe/Manuel.Bronstein/algebra, which
ships with the Aldor compiler. Of course, I am much better at thinking up
these ideas than implementing them myself. :-)

Simon.


At 11:36 AM 13/07/2005, Gabor Grothendieck wrote:
>I don't know which free system is best.  I have mainly used Yacas
>but my needs to date have been pretty minimal so I suspect
>any of them would have worked.
>
>Eric's COM solution, once I have it figured out, will likely get me
>to the next step on Windows.  I did some googling around and
>found this:
>
>http://www.koders.com/python/fidDCC1B0FBFABC770277A28835D5FFADC9D25FF54E.aspx
>
>which is a python interface to Yacas which may give some ideas
>on how to interface it to R.
>
>
>On 7/12/05, S?ren H?jsgaard <Soren.Hojsgaard at agrsci.dk> wrote:
> > Personally, I like Maxima better than Yacas, but in both cases the
> solution (at least a minimal one) should be doable: A small program which
> pipes R commands into a terminal running Maxima/Yacas and taking the
> output back into R. I am not much into the technical details, but isn't
> that what can be done with the COM automatation server on Windows?? (I
> don't know what the equivalent would be on unix?).
> > Best regards
> > S?ren
> >
> > ________________________________
> >
> > Fra: Simon Blomberg [mailto:Simon.Blomberg at anu.edu.au]
> > Sendt: on 13-07-2005 01:52
> > Til: Duncan Murdoch; Gabor Grothendieck
> > Cc: S?ren H?jsgaard; r-devel at stat.math.ethz.ch
> > Emne: Re: [Rd] Computer algebra in R - would that be an idea??
> >
> >
> >
> > I would use such a symbolic math package for R. I have dreamt of an
> > open-source solution with functionality similar to mathStatica.
> > http://www.mathstatica.com/ Is yacas the best system to consider? What
> > about  Maxima http://maxima.sourceforge.net/, which is also GPL, or
maybe
> > Axiom http://savannah.nongnu.org/projects/axiom, which has a modified
BSD
> > license?
> >
> > Cheers,
> >
> > Simon.
> >
> > At 01:25 AM 13/07/2005, Duncan Murdoch wrote:
> > >On 7/12/2005 10:57 AM, Gabor Grothendieck wrote:
> > > > On 7/12/05, S?ren H?jsgaard <Soren.Hojsgaard at
agrsci.dk> wrote:
> > > >> >From time to time people request symbolic
computations beyond what
> > > D() and deriv() etc can provide. A brief look at the internet
shows that
> > > there are many more or less developed computer algebra packages
freely
> > > available. Therefore, I wondered if it would be an idea to try to
> > > 'integrate' one of these packages in R, which I guess can
be done in more
> > > or less elegant ways... I do not know any of the computer algebra
people
> > > around the World, but perhaps some other people from the
R-community do
> > > and would be able to/interested in establishing such a
connection...
> > > >
> > > >
> > > > Coincidentally I asked the yacas developer about this just
yesterday:
> > > >
> > >
>
http://sourceforge.net/mailarchive/forum.php?thread_id=7711431&forum_id=2216
> > >
> > >It sounds like developing an R package to act as a wrapper would
be the
> > >best approach.  I didn't see documentation for their API (the
exports of
> > >their DLL), but I didn't spend long looking.
> > >
> > >Duncan Murdoch
> > >
> > >______________________________________________
> > >R-devel at r-project.org mailing list
> > >https://stat.ethz.ch/mailman/listinfo/r-devel
> >
> > Simon Blomberg, B.Sc.(Hons.), Ph.D, M.App.Stat.
> > Centre for Resource and Environmental Studies
> > The Australian National University
> > Canberra ACT 0200
> > Australia
> > T: +61 2 6125 7800 email: Simon.Blomberg_at_anu.edu.au
> > F: +61 2 6125 0757
> > CRICOS Provider # 00120C
> >
> >
> >
> >
> >