En el esquema se puede definir el siguiente procedimiento:sintaxis correcta para una expresión lambda que recibe cualquier número de argumentos en el Esquema
(define (proc . vars)
(display (length vars)))
Esto le permitirá enviar cualquier cantidad de argumentos a proc. Pero cuando trato de hacerlo de esta manera:
(define proc (lambda (. vars)
(display (length vars))))
me sale el siguiente error:
read: illegal use of "."
Me parece que no puede encontrar la sintaxis correcta para una expresión lambda que recibe cualquier número de argumentos . Ideas?
(estoy usando DrScheme, la versión 209, con un lenguaje ajustado a PLT (gráfica))
Gracias!
No relacionado con su pregunta, le recomiendo encarecidamente que actualice a la última versión de DrScheme, ahora llamada DrRacket. Puede descargarlo aquí: http://racket-lang.org/ –
@SamTH La versión de DrScheme que utilicé fue dictada por mi universidad, pero gracias de todos modos, puedo terminar de leer SICP en mi tiempo libre y utilizar esta versión en su lugar ... – Hila