Puedo cargar y llamar a las funciones, pero me gustaría volver a cargar el archivo después de hacer algunas correcciones.¿Cómo descargar un archivo Lisp en CLisp REPL?
¿No puede encontrar una función de descarga o recarga?
Puedo cargar y llamar a las funciones, pero me gustaría volver a cargar el archivo después de hacer algunas correcciones.¿Cómo descargar un archivo Lisp en CLisp REPL?
¿No puede encontrar una función de descarga o recarga?
Simplemente use load
nuevamente.
La descarga no es realmente posible. Por ejemplo, es posible eliminar un paquete y eliminar sus definiciones. Pero otras referencias a un símbolo de ese paquete aún pueden existir.
La forma típica de lidiar con eso es a load un archivo de nuevo, como mencionó Vijay Mathew.
Puede ser útil que el archivo cargado esté escrito de tal manera que sea posible volver a cargarlo.
algunas observaciones sobre la recarga:
funciones/macros serán reemplazados con la nueva definición.
funciones/macros en el código existente no pueden ser reemplazadas debido a la expansión entrante/macro.
Las clases de CLOS se actualizarán, sus instancias se actualizarán de forma diferida.
Las definiciones de estructura se actualizarán, las instancias de estructura existentes no se actualizarán.
DEFVAR reemplaza un valor si uno no existe. DEFPARAMETER siempre reemplaza un valor.
@Joswig Thanks !! –
Me doy cuenta de que esta es una respuesta antigua, pero aquí vamos. Vale la pena mencionar que cualquier función/macros/etc. Es posible que hayas eliminado del archivo y que siga existiendo, contaminando la imagen y posiblemente causando un comportamiento que no verías en una compilación completamente limpia. –