A well-designed API generalized to work with arrays should probably
borrow ideas from how argument 'MARGIN' of apply() works, how argument
'dim' in rowSums() for (though I must say the letter seem a bit ad hoc
at first sight given the name of the function). ?There may also be
something to learn from the 'reshape' package and so.
I'd also recommend looking at plyr::aaply, which fixes a few things
that have always annoyed me about apply - namely that it is not
idempotent/identical to aperm when the summary function is the
identity.
Hadley
--
Assistant Professor / Dobelman Family Junior Chair
Department of Statistics / Rice University
http://had.co.nz/