Re: Funciones definidas por el usuario con argumentos de expresiónNo. La función definida por el usuario siempre evalúa los argumentos que se pasaron antes de poner los valores en sus parámetros locales.
Podría usar expr(), pero una lista es una mejor opción: myfunc( "X", { formula(row() ) } ). Usé eso en algún lugar recientemente, y funcionó bien; las variables dentro de la lista aún deben evaluarse, y myfunc las encuentra en el contexto de llamada adecuado. (Suponiendo que no haya colisiones entre los nombres de las personas que llaman y los nombres de myfunc...) Creo que usé una sola lista y también aproveché nitems().
Funciones definidas por el usuario con argumentos de expresiónEn JSL hay muchas funciones que permiten Expresiones como argumentos, como
dt << New Column( "X", Formula( row() ) );
donde el argumento complementario Fórmula ( fila () ) puede estar en cualquier posición (N>1) dentro de (...) porque se puede identificar a través de la palabra clave
Fórmula().
¿Pueden las funciones definidas por el usuario tener argumentos complementarios similares?
Automatización y secuencias de comandosRe: Funciones definidas por el usuario con argumentos de expresiónGracias @Craige_Hales , la solución con la lista - brillante 
Hm, ¿vale la pena escribir una publicación para la lista de deseos?
Ah, hay uno:
Argumentos de palabras clave para funciones