What is 'littler'? We summarized it briefly in the post and on our respective or pages:
GNU R, a language and environment for statistical computing and graphics, provides a wonderful system for 'programming with data' as well as interactive exploratory analysis, often involving graphs.Sometimes, however, simple scripts are desired. While R can be used in batch mode, and while so-called 'here' documents can be crafted, a long-standing need for a scripting front-end has often been expressed by the R Community.
littler (pronounced 'little R' and written 'r') aims to fill this need.
It can be used directly on the command-line just like, say,
bc
(1):$ echo 'cat(pi^2,"\n")' | r 9.869604http://ftp-master.debian.org/new.html Equivalently, commands that are to be evaluated can be given on the command-line$ r -e 'cat(pi^2, "\n")' 9.869604But unlike bc(1), GNU R has a vast number of statistical functions. For example, we can quickly compute a summary() and show a stem-and-leaf plot for file sizes in a given directory via$ ls -l /boot | awk '!/^total/ {print $5}' | \ r -e 'fsizes <- as.integer(readLines()); print(summary(fsizes)); stem(fsizes)' Min. 1st Qu. Median Mean 3rd Qu. Max. 13 512 110100 486900 768400 4735000 Loading required package: grDevices The decimal point is 6 digit(s) to the right of the | 0 | 00000000000000000011112223 0 | 5557778899 1 | 112233 1 | 5 2 | 2 | 3 | 3 | 4 | 4 | 7And, last but not least, this (somewhat unwieldy) expression can be stored in a helper script:$ cat examples/fsizes.r #!/usr/bin/env r fsizes <- as.integer(readLines()) print(summary(fsizes)) stem(fsizes)(where calling /usr/bin/env is a trick from Python which allows one to forget whether r is installed in /usr/bin/r, /usr/local/bin/r, ~/bin/r, ...)A few examples are provided in the source directories examples/ and tests/.
At least one shortcoming already became apparent: by calling it r to not trample on the real R binary, we obviously overlooked that there are certain operating systems on which case is ignored -- ouch. So Mac users may have to install it as a littler binary.
Other comments, as seen in the mailing list thread, are mostly supportive.
littler can either be downloaded from either the Vanderbilt BioStat Wiki or my local archive. Also available is SVN access via
svn http://littler.googlecode.com/svn/trunk/ littler
Debian users shall get it via apt-get install littler
as
soon as it leaves Debian's NEW queue.
In the meantime, the configure && make && make install
three-step works for us under any of Debian testing, Ubuntu Dapper, OS X, and
with both R 2.3.1 and the pre-releases of R 2.4.0.