Re: [Rd] Getting param names of primitives

From: Martin Maechler <maechler_at_stat.math.ethz.ch>
Date: Wed, 11 Jul 2007 12:28:57 +0200

>>>>> "BDR" == Prof Brian Ripley <ripley_at_stats.ox.ac.uk> >>>>> on Wed, 11 Jul 2007 05:48:56 +0100 (BST) writes:

>> formals(args(log))
    BDR> $x

    BDR> $base
    BDR> exp(1)

    BDR> gives what formals(log) used to.

(I knew). I've been asking myself several times now, if we should not make
formals() do this automatically.
I know that the change might break some code which has used things like

if(is.null(formals(fun))) {  

  ## treat fun as a primitive function

}

but I think R has provided is.primitive(.) long enough now so that
we could consider the change.

Martin

    BDR> On Wed, 11 Jul 2007, miguel manese wrote:

>> Hi,
>>
>> In the latest R this does not work anymore
>>
>> args <- formals(log)
>>
>> because log is primitive. Is there any other way to get the argument
>> list? I just need the name of the parameter to display some error
>> message about it. I have looked at args() but I can't find anything to
>> extract the argument names from it.
>>
>> Thanks,
>> M. Manese

    BDR> -- 
    BDR> Brian D. Ripley,                  ripley_at_stats.ox.ac.uk
    BDR> Professor of Applied Statistics,  http://www.stats.ox.ac.uk/~ripley/
    BDR> University of Oxford,             Tel:  +44 1865 272861 (self)
    BDR> 1 South Parks Road,                     +44 1865 272866 (PA)
    BDR> Oxford OX1 3TG, UK                Fax:  +44 1865 272595

    BDR> ______________________________________________
    BDR> R-devel_at_r-project.org mailing list     BDR> https://stat.ethz.ch/mailman/listinfo/r-devel

R-devel_at_r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel Received on Wed 11 Jul 2007 - 10:39:38 GMT

Archive maintained by Robert King, hosted by the discipline of statistics at the University of Newcastle, Australia.
Archive generated by hypermail 2.2.0, at Wed 11 Jul 2007 - 14:36:10 GMT.

Mailing list information is available at https://stat.ethz.ch/mailman/listinfo/r-devel. Please read the posting guide before posting to the list.