Re: Construct a function with argments specified by an R expression

Iris Simmons <[email protected]>
Newsgroups gmane.comp.lang.r.general
Message-ID <CADNULg9+zU6qN-u7CXFBJDGaJ3T2MQnws3LJGhO5Ya3_S+r4sw@mail.gmail.com>
I would start by making a list of the desired length, where each element is
the missing argument:

f <- rep(list(quote(expr = )), 2 + length(argnms))

then add names to the list:

names(f) <- c("x", "y", argnms)

and then use formals<-

formals(foo) <- f

Although, I would ask if you're certain that this is actually what you want
to do. It's usually a bad idea to have variable names that you don't know.
I'd to think it'd be better to have the default argument:

a = list()

and supply a list of `a` values instead of several `a` arguments.

On Fri, Oct 24, 2025, 22:23 Rolf Turner <[email protected]> wrote:

>
> I want to build a function (say "buildFn") to *return* a function of the
> form
>
>     foo(x,y,a1, ... an, b1, ..., bn)
>
> where the arguments ai and bi are given in the form of a list created
> in R.  E.g. I'd like to be able to say
>
>      argnms <- c(paste0("a",1:3),paste0("b",1:3"))
>      foo <- buildFn(argnms)
>
> with the resulting "foo" having arguments x, y, a1, a2, a3, b1, b2, b3.
>
> I thought I might be able to do this using "formals<-" but I cannot get
> this to work.  i could provide more detail of what I've tried, but it's
> probably not worth it.
>
> Can anyone steer me in the right direction?  Thanks.
>
> cheers,
>
> Rolf Turner
>
> --
> Honorary Research Fellow
> Department of Statistics
> University of Auckland
> Stats. Dep't. (secretaries) phone:
>          +64-9-373-7599 ext. 89622
> Home phone: +64-9-480-4619
>
> ______________________________________________
> [email protected] mailing list -- To UNSUBSCRIBE and more, see
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide
> https://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>

	[[alternative HTML version deleted]]
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.