Re: [Rd] wishlist --- menu entry [Rgui] misc --- stop current computation

From: Henrik Bengtsson <hb_at_stat.berkeley.edu>
Date: Tue 19 Sep 2006 - 20:28:29 GMT

On 9/19/06, Prof Brian Ripley <ripley@stats.ox.ac.uk> wrote:
> On Tue, 19 Sep 2006, Kjetil Halvorsen wrote:
>
> > This is from R-2.4.0alpha on windows XP, downloaded from CRAN yesterday.
> >
> > I did
> > update.packages(destdir= ..., ask=FALSE,checkBuilt=TRUE)
> >
> > which took quite a long time (as.expected). When the internet cafe
> > had to close, I had to stop the downloading, but the menu item
> > misc --- stop current computation only stopped the current download,
> > and then R imeadiaetely continued whit the next in the waitin list, so I had
> > to kill
> > R. I would be nice if this could be corrected so it really
> > stopped all the waiting computastion!
>
> As it does what it says, it cannot be 'corrected' to do something else.
> I usually find hitting Ctrl-C (or ESC in Rgui) a few times breaks out
> here.
>
> The issue is that update.packages (or more precisely download.packages)
> has a loop of try() constructs, and those are trapping interrupts.
> I don't think there is any way to distinguish those from other internal
> errors. In any case, it is a somewhat delicate question as to what you
> want: do you want pending on.exit() actions done, for example?

Without digging into the update.packages() et al code, wouldn't a distinction between 'error' and 'interrupt' using tryCatch() rather than try() solve this? ...assuming "stop current computation" signals some kind of interrupt.

Some additional thoughs: It would be very useful if we could define different 'condition' classes that can be caught or let through using tryCatch(). Then higher-level methods such as source() and example() can then be made sensitive to these. For example:

simpleExit extends simpleCondition: A script can throw this to signal to example() or source() that it want to exit the evaluation nicely, cf. stop(). See also R-devel topic "[Rd] New simpleExit() condition (Was: Re: Can example() code stop the example without generating an error?)" on March 14, 2006.

/Henrik

>
> --
> 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@r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-devel
>
>



R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel Received on Wed Sep 20 06:30:41 2006

Archive maintained by Robert King, hosted by the discipline of statistics at the University of Newcastle, Australia.
Archive generated by hypermail 2.1.8, at Wed 20 Sep 2006 - 06:30:07 GMT.

Mailing list information is available at https://stat.ethz.ch/mailman/listinfo/r-devel. Please read the posting guide before posting to the list.