Funktionsgenerierung; Standardeinstellungen anderer Funktionen ändern (teilweise)

Ich brauche einen Funktionsgenerator, der eine andere Funktion und alle Argumente dieser Funktion übernimmt und neue Standardeinstellungen setzt. Ich dachte bei Hadleypryr::partial war diese magische Funktion. Es macht genau das, was ich will, außer dass Sie diese neue Standardeinstellung dann nicht ändern können. Also hier kann ich mich ändernsep in meinem neuenpaste Funktion aber nicht der neue Standard voncollapse = "_BAR_". Wie kann ich machenpartial auf diese Weise ausführen (d. h. standardmäßig aufcollapse = "_BAR_" aber aktivieren Sie es aufcollapse = NULL wenn gewünscht)? Wenn dies mit nicht möglich istpartial Gibt es eine Möglichkeit, den Code für neu zu schreiben?partial um dies zu tun:https://github.com/hadley/pryr/blob/master/R/partial.r

library(pryr)
.paste <- pryr::partial(paste, collapse = "_FOO_")

.paste(1:5)
.paste(1:5, LETTERS[1:5], sep="_BAR_")
.paste(1:5, collapse=NULL)

> .paste(1:5)
[1] "1_FOO_2_FOO_3_FOO_4_FOO_5"

> .paste(1:5, LETTERS[1:5], sep="_BAR_")
[1] "1_BAR_A_FOO_2_BAR_B_FOO_3_BAR_C_FOO_4_BAR_D_FOO_5_BAR_E"

> .paste(1:5, collapse=NULL)
Error in paste(collapse = "_FOO_", ...) : 
  formal argument "collapse" matched by multiple actual arguments