[R] [beginner] simple keyword to exit script ?

2010-11-21 Thread madr

I have tried quit(), and return() but first exits from whole graphical
interface and second is only for functions. What I need only to exit from
current script and return to the console.
-- 
View this message in context: 
http://r.789695.n4.nabble.com/beginner-simple-keyword-to-exit-script-tp3052417p3052417.html
Sent from the R help mailing list archive at Nabble.com.

__
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.


Re: [R] [beginner] simple keyword to exit script ?

2010-11-21 Thread David Winsemius


On Nov 21, 2010, at 9:52 AM, madr wrote:



I have tried quit(), and return() but first exits from whole graphical
interface and second is only for functions. What I need only to exit  
from

current script and return to the console.


?stop


--


David Winsemius, MD
West Hartford, CT

__
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.


Re: [R] [beginner] simple keyword to exit script ?

2010-11-21 Thread madr

I try to use stop(), but i get:
Error in eval.with.vis(expr, envir, enclos) : 
-- 
View this message in context: 
http://r.789695.n4.nabble.com/beginner-simple-keyword-to-exit-script-tp3052417p3052430.html
Sent from the R help mailing list archive at Nabble.com.

__
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.


Re: [R] [beginner] simple keyword to exit script ?

2010-11-21 Thread David Winsemius
stop() throws an error but the side effect is to pop out of whatever  
environment you may be in and return to the top-level. I thought that  
was what you wanted. If not,  then please produce a better problem  
description with code as requested in the posting guide.


On Nov 21, 2010, at 10:12 AM, madr wrote:



I try to use stop(), but i get:
Error in eval.with.vis(expr, envir, enclos) :
--
View this message in context: http://r.789695.n4.nabble.com/


And learn to include context.

--

David Winsemius, MD
West Hartford, CT

__
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.


Re: [R] [beginner] simple keyword to exit script ?

2010-11-21 Thread David Winsemius


On Nov 21, 2010, at 10:43 AM, madr wrote:



Is there any way of suppressing that error, like in other programming
languages you can specifically invoke an error or simply exit,


If you are in a function, then return()


like after
user input, exiting then is not always identical with error , there  
are
cases when it is intended behavior. I thought R makes that  
distinction.


Provide some code. (You did say you had a script.)  The answer  
probably depends on context and you are not providing any.


--

David Winsemius, MD
West Hartford, CT

__
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.


Re: [R] [beginner] simple keyword to exit script ?

2010-11-21 Thread madr

Is there any way of suppressing that error, like in other programming
languages you can specifically invoke an error or simply exit, like after
user input, exiting then is not always identical with error , there are
cases when it is intended behavior. I thought R makes that distinction.
-- 
View this message in context: 
http://r.789695.n4.nabble.com/beginner-simple-keyword-to-exit-script-tp3052417p3052464.html
Sent from the R help mailing list archive at Nabble.com.

__
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.


Re: [R] [beginner] simple keyword to exit script ?

2010-11-21 Thread Gabor Grothendieck
On Sun, Nov 21, 2010 at 9:52 AM, madr madra...@interia.pl wrote:

 I have tried quit(), and return() but first exits from whole graphical
 interface and second is only for functions. What I need only to exit from
 current script and return to the console.

1. use my.source() below instead of source() to source your file and
2. in your file exit by using parent.frame(3)$exit.source(returncode).

Note that parent.frame(3)exit.source(returncode) must be at the top
level of your script.  If its buried within a function within the
script then you may have to increase 3 to some larger number to go
back the correct number of frames.   See ?callCC for more info.

Here is an example:

# use this in place of source
my.source - function(file, ...) {
source. - function(exit.source) source(file, ...)
callCC(source.)
}

# generate a test script called mytestfile.R
cat(cat('A\n')
parent.frame(3)$exit.source(7)  # exit script
cat('B\n')
, file = mytestfile.R)

# run the test script
# It never gets to cat('B\n')
# exitcode contains the exit code, 7 in this case
exitcode - my.source(mytestfile.R)

-- 
Statistics  Software Consulting
GKX Group, GKX Associates Inc.
tel: 1-877-GKX-GROUP
email: ggrothendieck at gmail.com

__
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.


Re: [R] [beginner] simple keyword to exit script ?

2010-11-21 Thread Henrik Bengtsson
Better is probably to return() from a function, i.e. define a function
in your script and call that at the end of your function, e.g.

- - - -

main - function() {
  # bla
  # bla
  if (something) {
return();
  }
  # otherwise
  # bla
}

main();

- - - -

Otherwise, here is a hack:

stopQuietly - function(...) {
  blankMsg - sprintf(\r%s\r, paste(rep( , getOption(width)-1L),
collapse= ));
  stop(simpleError(blankMsg));
} # stopQuietly()

 stopQuietly()



The Error: message will be replaced by blanks.  It will still output
an empty line.  May not work in all settings; depends on terminal etc.
 You need to define stopQuietly() in your script.

My $.02

/Henrik

On Sun, Nov 21, 2010 at 7:56 AM, David Winsemius dwinsem...@comcast.net wrote:

 On Nov 21, 2010, at 10:43 AM, madr wrote:


 Is there any way of suppressing that error, like in other programming
 languages you can specifically invoke an error or simply exit,

 If you are in a function, then return()

 like after
 user input, exiting then is not always identical with error , there are
 cases when it is intended behavior. I thought R makes that distinction.

 Provide some code. (You did say you had a script.)  The answer probably
 depends on context and you are not providing any.

 --

 David Winsemius, MD
 West Hartford, CT

 __
 R-help@r-project.org mailing list
 https://stat.ethz.ch/mailman/listinfo/r-help
 PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
 and provide commented, minimal, self-contained, reproducible code.


__
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.


Re: [R] [beginner] simple keyword to exit script ?

2010-11-21 Thread Petr Savicky
On Sun, Nov 21, 2010 at 10:56:14AM -0500, David Winsemius wrote:
 On Nov 21, 2010, at 10:43 AM, madr wrote:
 Is there any way of suppressing that error, like in other programming
 languages you can specifically invoke an error or simply exit,
 
 If you are in a function, then return()
 
 like after
 user input, exiting then is not always identical with error , there  
 are
 cases when it is intended behavior. I thought R makes that  
 distinction.
 
 Provide some code. (You did say you had a script.)  The answer  
 probably depends on context and you are not providing any.

A script may reach a condition, when it should stop in different
situations. It need not be called using source(). It may be a
function called from an extension package. If there is a sequence
of several embedded calls than return() cannot be used.

For scripts, which i use myself, i use stop() with a parameter,
which is a character string explaining the stopping condition.
This string is then a part of the generated error message.

For scripts, which are used also by other people, i try to avoid
this and make sure that after reaching a stopping condition, all
cycles and function calls are finished.

PS.

__
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.


Re: [R] [beginner] simple keyword to exit script ?

2010-11-21 Thread William Dunlap
 -Original Message-
 From: r-help-boun...@r-project.org 
 [mailto:r-help-boun...@r-project.org] On Behalf Of Henrik Bengtsson
 Sent: Sunday, November 21, 2010 8:17 AM
 To: David Winsemius
 Cc: r-help; madr
 Subject: Re: [R] [beginner] simple keyword to exit script ?
 
 Better is probably to return() from a function, i.e. define a function
 in your script and call that at the end of your function, e.g.

This list gets a lot of questions about how to
do things with 'scripts' that are easily done with
functions.  The S language (implemented by R and S+)
is oriented around functions, not scripts.  Functions
easily call other functions but scripts cannot easily
call other scripts.  Scripts are handy for one-off
things, but if you want to use the code in them again
it is best to put it into functions (and, after not
too long, the functions into a package).  If you don't
accept that fact you have no end of frustration
with the language.  (I realize others may have
different opinions.) 

Bill Dunlap
Spotfire, TIBCO Software
wdunlap tibco.com  

 
 - - - -
 
 main - function() {
   # bla
   # bla
   if (something) {
 return();
   }
   # otherwise
   # bla
 }
 
 main();
 
 - - - -
 
 Otherwise, here is a hack:
 
 stopQuietly - function(...) {
   blankMsg - sprintf(\r%s\r, paste(rep( , getOption(width)-1L),
 collapse= ));
   stop(simpleError(blankMsg));
 } # stopQuietly()
 
  stopQuietly()
 
 
 
 The Error: message will be replaced by blanks.  It will still output
 an empty line.  May not work in all settings; depends on terminal etc.
  You need to define stopQuietly() in your script.
 
 My $.02
 
 /Henrik
 
 On Sun, Nov 21, 2010 at 7:56 AM, David Winsemius 
 dwinsem...@comcast.net wrote:
 
  On Nov 21, 2010, at 10:43 AM, madr wrote:
 
 
  Is there any way of suppressing that error, like in other 
 programming
  languages you can specifically invoke an error or simply exit,
 
  If you are in a function, then return()
 
  like after
  user input, exiting then is not always identical with 
 error , there are
  cases when it is intended behavior. I thought R makes that 
 distinction.
 
  Provide some code. (You did say you had a script.)  The 
 answer probably
  depends on context and you are not providing any.
 
  --
 
  David Winsemius, MD
  West Hartford, CT
 
  __
  R-help@r-project.org mailing list
  https://stat.ethz.ch/mailman/listinfo/r-help
  PLEASE do read the posting guide 
 http://www.R-project.org/posting-guide.html
  and provide commented, minimal, self-contained, reproducible code.
 
 
 __
 R-help@r-project.org mailing list
 https://stat.ethz.ch/mailman/listinfo/r-help
 PLEASE do read the posting guide 
 http://www.R-project.org/posting-guide.html
 and provide commented, minimal, self-contained, reproducible code.
 

__
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.