How graphical an interface should the default be?
Very nice additions you have made! Thanks.
-----Original Message----- From: r-devel-bounces@stat.math.ethz.ch [mailto:r-devel-bounces@stat.math.ethz.ch] On Behalf Of Prof Brian Ripley Sent: Friday, February 25, 2005 12:11 PM To: R-devel@r-project.org Subject: [Rd] How graphical an interface should the default be? install/update.packages will have a lot of changes in 2.1.0, and I have been adding some widgets to go along with this. - Rather than just CRAN and BIOC, you have a character vector of repositories. There is a function setRepositories() to set the appropriate option(). - There is no default CRAN, but a function chooseCRANmirror() to set a mirror, which is invoked if you try to access CRAN without setting a mirror. - update.packages(ask="graphics") brings up a listbox for you to de-select packages (all available updates are pre-selected).
Minor comment 1: Isn't ask=(TRUE|FALSE) and graphics=(TRUE|FALSE) more in line with the other updates? True, one more argument, but you can imagine update.packages(ask=TRUE) with a "fall-back" to a text-based selection menu. Until implemented, one could default to graphics=ask. Minor comment 2: Naming conventions, not discussed very often, but I would suggest chooseCranMirror() instead of chooseCRANmirror(). (I comment on this in under "3.1 General Naming Conventions" -> "Abbreviations and acronyms should not be uppercase when used as name" in my RCC draft at http://www.maths.lth.se/help/R/RCC/.)
- install.packages() with no/empty pkgs argument brings up a listbox of all available packages (including those inside bundles). - menu(graphics=TRUE) is implemented. These can be set up to use widgets where available (Windows, if Tk is available under X11, I hope Aqua before release), and have a text-mode fallback (better than the current menu(), but in that spirit). (Except that is install.packages: text-mode selection from 480 packages even in three columns is not useful to me, but a scrolling list works well as Windows users of R already know.) My question is: What should be default be? Options might be: - use the graphics widget if available. - make the graphics the default on Windows (it will always be available, but not necessarily on the right screen under DCOM uses). - make text-mode the default on Unix.
I would say that same/identical behaviour on as many platforms as possible should be favored. That will make it easier to write general instructions/help and have subsection with OS-specific features.
- do different things for different tools. Currently setRepositories() and chooseCRANmirror() default to graphics-if-possible, and update.packages() defaults to text mode (which gives more detailed information). I am not really in favour of making the defaults a set of options, but that is possible.
My feeling is that a global option is what you want. Not only in the above cases, it would be nice for any package developer to be able to query such an option. I also believe there are different users; some prefer GUIs some prefer command line, or even strongly dislike GUIs). If writing scripts for, say, automated installation of 450+ CRAN packages on various systems such Linux, Windows and OS X, it would be very useful to have a predictive behaviour of the above so that you can make it work the same on all systems. For example, I used to redefine readline() to automatically answer questions asked by install.packages() when installing many packages at the same time; this would be much harder if a GUI pops up. Maybe there should be a new options to start R with, e.g. --nogui. Best Henrik Bengtsson
This is a request for input on what would be a good compromise for general R users (and not just the R-devel audience). -- Brian D. Ripley, ripley@stats.ox.ac.uk Professor of Applied Statistics, http://www.stats.ox.ac.uk/~ripley/ University of Oxford, Tel: +44 1865 272861 (self) 1 South Parks Road, +44 1865 272866 (PA) Oxford OX1 3TG, UK Fax: +44 1865 272595
______________________________________________ R-devel@stat.math.ethz.ch mailing list https://stat.ethz.ch/mailman/listinfo/r-devel