closure (cerradura)
En Scheme, se crea una cerradura cuando una función, por
lo general una expresión lambda, se pasa como variable. La
cerradura contiene el codigo de la función y referencias a las
ligaduras léxicas de las variables libres de la función (es decir,
las variables que se usan en la expresión pero se definen fuera de
ella). Cuando más tarde se aplica esta función a diferentes
argumentos, las ligaduras de variables libres que se capturaron
dentro de la cerradura se utilizan para obtener los valores de las
variables libres que se usarán en el cálculo. Una propiedad útil
de las cerraduras es la retención de los valores internos de las
variables de una invocación a otra, permitiendo así que se pueda
mantener un estado.