Utility functions useful when programming and developing R packages.
Warning: The Application Programming Interface (API) of the classes and methods in this package may change. Classes and methods are considered either to be stable, or to be in beta or alpha (pre-beta) stage. See list below for details.
The main reason for publishing this package on CRAN although it lacks a stable API, is that its methods and classes are used internally by other packages on CRAN that the author has published.
For package history, see showHistory(R.utils)
.
This package requires the R.oo package [1].
To install this package do:
install.packages("R.utils")
Arguments[alpha] Methods for common argument processing.
Assert[alpha] Methods for assertion of values and states.
GString[alpha] A character string class with methods for simple substitution.
Java[beta] Reads and writes Java streams.
Options[alpha] Tree-structured options queried in a file-system like manner.
Settings[alpha] An Options class for reading and writing package settings.
ProgressBar[beta] Text-based progress bar.
FileProgressBar[beta] A ProgressBar that reports progress as file size.
System[alpha] Methods for access to system.
Verbose[alpha] A class for verbose and log output. Utilized by the VComments and LComments classes.
SmartComments, VComments, LComments[alpha] Methods for preprocessing source code comments of certain formats into R code.
In addition to the above, there is a large set of function for file handling such as support for reading/following Windows Shortcut links, but also other standalone utility functions. See package index for a list of these. These should also be considered to be in alpha or beta stage.
Whenever using this package, please cite [1] as
Bengtsson, H. The R.oo package - Object-Oriented Programming with References Using Standard R Code, Proceedings of the 3rd International Workshop on Distributed Statistical Computing (DSC 2003), ISSN 1609-395X, Hornik, K.; Leisch, F. & Zeileis, A. (ed.), 2003
Here is a list of features that would be useful, but which I have too little time to add myself. Contributions are appreciated.
Write a TclTkProgressBar class.
Improve/stabilize the GString class.
Mature the SmartComments classes. Also add AComments and PComments for assertion and progress/status comments.
If you consider implement some of the above, make sure it is not already implemented by downloading the latest "devel" version!
The releases of this package is licensed under LGPL version 2.1 or newer.
The development code of the packages is under a private licence (where applicable) and patches sent to the author fall under the latter license, but will be, if incorporated, released under the "release" license above.
[1] H. Bengtsson, The R.oo package - Object-Oriented Programming with References Using Standard R Code, In Kurt Hornik, Friedrich Leisch and Achim Zeileis, editors, Proceedings of the 3rd International Workshop on Distributed Statistical Computing (DSC 2003), March 20-22, Vienna, Austria. http://www.ci.tuwien.ac.at/Conferences/DSC-2003/Proceedings/