[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