Evaluate a function with a modified default values
callwith(fun, args, dots = list(), keep.null = FALSE, envir = parent.frame())
either a function or a non-empty character string naming the function to be called
a list of values to modify the default arguments of the function
the user-specific input (usually from ...)
TRUE
to keep NULL
values after argument modifications
the environment to evaluate the function call