Hello, I would like to use substitute in a list to evaluate the formals arguments using the environment define by the arguments list. For instance : f1 <- function(x, y = 1:x){ ans <- as.list(match.call()) ##possible args: frmls <- formals(as.character(ans[[1]])) ## eval formals locally frmls <- lapply(frmls, substitute, env = c(ans[-1], frmls)) return(c(ans, frmls)) } f1(3) ## returns Error in lapply(frmls, substitute, env = c(ans[-1], frmls)) : '...' used in an incorrect context I do not understand why. I would like to obtain something like : [[1]] "f1" $x 3 $y 1:3 Any idea of the problem and what would be the correct way to implement it ? Thanks in advance -- St?phane DRAY (stephane.dray at univ-lyon1.fr) Laboratoire BBE-CNRS-UMR-5558, Univ. C. Bernard - Lyon I 43, Bd du 11 Novembre 1918, 69622 Villeurbanne Cedex, France Tel: 33 4 72 43 27 57 Fax: 33 4 72 43 13 88 http://pbil.univ-lyon1.fr/members/dray/