[R] Viewing function source
    Thomas Lumley 
    tlumley at u.washington.edu
       
    Tue Aug 26 19:07:01 CEST 2003
    
    
  
On Tue, 26 Aug 2003, Paul Meagher wrote:
> I know I should probably RTFM for this question, but could someone tell me
> if R supports the idea of "viewing source" on any particular function you
> want to use?
>
> If I want to "view source" on the rpois() function, for example, can I do
> somethink like:
>
> source(rpois)
>
> To see how the function is implemented?
It's even simpler in most cases, but you have picked an especially
complicated example
Just type the name of the function to see the R code
  > rpois
  function (n, lambda)
  .Internal(rpois(n, lambda))
But in this case it tells you that rpois is implemented in C code :(
 By convention, it is likely to be a function called do_rpois,
 however in this case we have an exception to the convention.  You can
look in src/main.names.c for the name of the C function.
abacus% fgrep rpois names.c
{"rpois",       do_random1,     3,      11,     2,      {PP_FUNCALL,
PREC_FN,0}},
so the function do_random1 is actually involved. If you grep for that, you
are directed to src/main/random.c and you will eventually find that the
underlying code is in src/nmath/rpois.c and is commented with a reference
to the ACM Transactions on Mathematical Software.
	-thomas
    
    
More information about the R-help
mailing list