Comment arrêter / terminer / arrêter un script dans R?

J'ai écrit un script qui devrait arrêter l'exécution si les données fournies sont incorrectes. Cependant, bien que stop produit un message d'erreur, le script continue, tout simplement. Un exemple minimal:

if (TRUE) {stop("End of script?")} #It should stop here
print("Script did NOT end!") # but it doesn't, because this line is printed!

Sortie de la Console:

> if (TRUE) {stop("End of script?")}
Error: End of script?
> print("Script did NOT end!")
[1] "Script did NOT end!"
>

Ce n'est effectivement pas surprenant, car à partir de ?stop:

arrête l'exécution de l'expression actuelle et exécute une action d'erreur.

De sorte qu'il se termine seulement l'expression actuelle, pas le script. J'ai trouvé ici que vous pouvez envelopper {} autour de la total script (ou le mettre dans une fonction), mais qui semble plutôt une solution de contournement qu'une solution. Bien sûr, il est bien pratique pour détecter les erreurs et de les manipuler hors de vous-même (voir par exemple le lien en commentaire de mra68), mais je voudrais quand même savoir si je peux arrêter un script en R.

J'ai aussi essayé de return et breakmais cela ne fonctionne que dans une fonction ou d'une boucle. J'ai cherché sur d'autres mots clés tels que "s'arrêter" et "fin", mais pas de chance. Je me sens un peu stupide, car elle semble être une question très simple.

Alors, est-il une commande qui peut faire mon script d'arrêt/stop/fin avec une erreur fatale ?

Je suis en cours d'exécution de la R 3.2.3 sur Windows 8, mais a eu le même problème avec R 3.0.1 au MAC-OSX.

> sessionInfo()
R version 3.2.3 (2015-12-10)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows >= 8 x64 (build 9200)

locale:
[1] LC_COLLATE=Dutch_Netherlands.1252  LC_CTYPE=Dutch_Netherlands.1252    LC_MONETARY=Dutch_Netherlands.1252
[4] LC_NUMERIC=C                       LC_TIME=Dutch_Netherlands.1252    

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

loaded via a namespace (and not attached):
[1] tools_3.2.3

TEST SUR MAC OS, sessionInfo()

R version 3.0.1 (2013-05-16)
Platform: x86_64-apple-darwin10.8.0 (64-bit)

locale:
[1] nl_NL.UTF-8/nl_NL.UTF-8/nl_NL.UTF-8/C/nl_NL.UTF-8/nl_NL.UTF-8

source d'informationauteur RHA