[R-gui] Interfaces between GUIs and R

Thomas Friedrichsmeier thomas.friedrichsmeier at ruhr-uni-bochum.de
Thu Apr 3 13:10:34 MEST 2003


Hi!

Since you explicitely mention RKward, I'll have to comment. In fact, RKward 
runs R in a separate thread and communicates via STDIN/STDOUT. This was more 
of a quick and dirty approach however, and I did not really think it was a 
good design. The very vague idea I had on how to deal with graphics and the 
like was to pass them via temporary files. Not very efficient, not very 
elegant.
By the way, however, RKward is on ice, and not likely to come back. Since I 
failed to attract further developers, and did not feel, I could reasonably 
get that program anywhere all alone, I went over to obversive (which BTW - 
shameless plug - runs on MacOSX, among other platforms). Zed Shaw is 
currently working on a CORBA-based backend for obversive, that might 
potentially be of interest to other GUI-projects, too. Last thing he said, 
he's close to having the basic functionality working.
Now for obversive, I have not bothered myself with the backend at all, but it 
would seem to me, like the functionality you mention would indeed come in 
handy. Zed is obviously more qualified to comment on this in detail.
Generally, I'd think it's a good idea to join forces on those problems, that 
all of our projects will have to face sooner or later.

Thomas

On Wednesday 02 April 2003 23:39, Byron Ellis wrote:
> Hi folks, this is a question for all you GUI developers out there
> though, in particular, to those who work on SciViews and RKward (though
> anyone else is certainly welcome to chime in). Presently, my StatPaper
> app (which will have a website soon, I've just been busy this week) and
> AFAIK RKward employ a "kernel"-type interaction method (SciViews
> mentions a kernel, but I haven't been able to test it to see how it
> works) with R, that is R itself runs as a separate process and
> communication takes place over either the STDIN/STDOUT associated with
> the process or through some other means (say, UNIX sockets).  This
> works fine if we're just passing text back and forth, but when we want
> to start passing objects or graphics device information things start to
> do downhill pretty quickly.
>
> My question: Is there any interest in developing a general kernel
> interaction protocol for R GUIs? This would most likely include the
> following:
> 	* Representation of data objects
> 	* Execution of R statements
> 	* Returning graphics of the kernel link
> 	* ???
>
> Recently, I've been looking at the OpenMath protocol
> (http://www.openmath.org) for use in StatPaper and it seems fairly
> simple and robust. It bears a great deal of resemblance to the MathLink
> protocol employed by Mathematica. At the moment I think this entire
> thing could be done as an R package, possibly using the REventLoop
> mechanism for the server (though I don't know that it would be
> necessary) and also providing client access so that two R installations
> could communicate (I know that Rpvm and Rmpi already exist, though they
> have a somewhat different goal) in a standard fashion if desired.
>
>
> Byron Ellis (bellis at hsph.harvard.edu)
> "Oook" - The Librarian



More information about the R-SIG-GUI mailing list