[R-gui] [Rd] R GUI considerations

Philippe Grosjean phgrosjean at sciviews.org
Thu Oct 20 09:57:12 CEST 2005


Byron Ellis wrote:
> [...]

> Contrary to popular belief the speed of R's interpreter is rarely the  
> limiting factor to R's speed. People treating R like C is typically  
> the limiting factor. You have vector operations, USE THEM.

Hey! I vote for a 'fortune' here!

> [...]

Otherwise, the discussion is taking a bad turn again (did someone 
suggested to trow away R, and rewrite it completelly?). So, here a 
couple of "rules" we should consider:

1) We love R, and we are really convinced that it is a nice statistical 
environment and a good statistical programming tool.

2) We want to build a GUI *around an existing software developped as a 
CLI*. As such, we know it is not straigthforward. We have to find 
workarounds for bad R behaviours (that happen because it was *not* 
conceived with a GUI in mind). We should just suggest a limited amount 
of changes, when really needed, remembering a GUI is not a priority in R 
development.

3) The S language is a strong force in R. Don't try to hide it under 
more sexy dialog boxes or other kinds of GUIs: expose R code (for 
instance, show R code constructed after selections done in that dialog 
box)... and give an opportunity to edit and reexecute that code to 
stimulate first experiments with the S language.

4) What is the language that is working an all platforms R runs, is 
perfectly compatible with R, and is always available once R is 
installed? Well, R itself (i.e., the S language), of course! So, to make 
sure your GUI code is most usable by the R community, write as much GUI 
code as you can in S language... and if you think you can write 
everything in you XXX language, think again, and you will realize that a 
large part of that code can actually be written directly in R as well.

5) There are new and better graphical widgets and languages appearing 
regularly in the computer world. The best ones for making a GUI today 
may be obsolete rapidly in the future. On the contrary, we all hope a 
longer life for R. Thus, write your GUI code in R as much as possible in 
a way it is independent from a particular GUI toolkit and interfacing 
language. I say, as much as possible, because this is a very diffcult 
task, given the specificities of each toolkit and language.

6) Write your code with reusability in mind; Reusability in your own 
GUI, but also, for sharing code between GUI projects. Remember writing a 
GUI for R is a very long and complex task, and you can hardly do it 
alone. Working all together, sharing code and ideas, would greatly 
improve our output.

I think if you disagree with these "rules", you'r wasting your time. You 
are then better to log off from R-SIG-GUI, even uninstall R if you are 
so angry,... and enjoy life instead of wasting time fighting against the 
$%*£&#! behaviour of R in your GUI.

Best,

Philippe Grosjean



More information about the R-SIG-GUI mailing list