Le 11/12/2025 à 09:21, Peter Langfelder a écrit :
I think it's a bit of a quirk of rep:

rep("x")
[1] "x"
Help of 'rep' does state this:

The default behaviour is as if the call was

        rep(x, times = 1, length.out = NA, each = 1)

So it seems to even be documented.
Right. But I think the initial question was rather "why f() does not complain about missing n?" It is because 'n' is not used in f() itself, it's just passed through in his quality of "missing".

If you define f() where 'n' is used in some way, e.g. as follows:

f=function(n) rep("x", times=n+0L)

then it complains:

f()
Error in f() (from #1) : argument "n" is missing, with no default

Serguei.


Peter


Peter

On Thu, Dec 11, 2025 at 2:40 PM Henrik Bengtsson
<[email protected]> wrote:
What's going on here:

$ R --vanilla --quiet
f <- function(n) rep("x", times = n)
f()
[1] "x"

?

getRversion()
[1] ‘4.5.2’

/Henrik

______________________________________________
[email protected] mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel
______________________________________________
[email protected] mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel






--
Serguei Sokol
Ingenieur de recherche INRAE

Cellule Mathématiques
TBI, INSA/INRAE UMR 792, INSA/CNRS UMR 5504
135 Avenue de Rangueil
31077 Toulouse Cedex 04

tel: +33 5 61 55 98 49
email: [email protected]
https://www.toulouse-biotechnology-institute.fr/en/plateformes-plateaux/cellule-mathematiques/

______________________________________________
[email protected] mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel

Reply via email to