2010-09-16 14 views
22

Newbie Common Lisp pregunta aquí.Restablecer el estado en Common Lisp

¿Hay alguna manera de restablecer el estado del medio ambiente? Lo que quiero decir es si hay algún comando que vuelva a poner el REPL en el mismo estado que estaba justo después de que se iniciara, es decir, que desenmarañe todas las variables, funciones, etc. O si eso no está en el estándar Common Lisp, ¿hay alguna extensión? en SBCL (la implementación que uso) para hacer eso?

(EDITAR: Yo sé que en limo, M-x limo-reinicio-inferior-Lisp hace eso pero me pregunto si hay una manera sin necesidad de reiniciar el proceso)

+0

una respuesta, así que estoy poniendo en un comentario: No sé exactamente por qué está haciendo esta pregunta, pero que podría ser interesado en hacer un volcado de núcleo de una imagen de Lisp en un estado "limpio" (yo, personalmente, al menos cargaría primero Quicklisp, pero eso depende de usted) y luego cargar eso; puedes hacerlo en SBCL con ['sb-ext: save-lisp-and-die'] (http://www.sbcl.org/manual/#Function-sb_002dext_003asave_002dlisp_002dand_002ddie) – fouric

Respuesta

22

No, en general, no. De vez en cuando quiero hacer algo así, por lo que mi flujo de trabajo generalmente es para crear un nuevo paquete para mantener cualquier proyecto que estoy comenzando, luego cuando quiero reiniciar cosas utilizo ELIMINAR-PAQUETE. Nunca trabajo en el paquete CL-USER, ya que las diferentes implementaciones tienen cosas diferentes.

-1

Uso Cc Mo, tal como figura en el menú de REPL Borrar Buffer

No
+3

Eso solo borra el resultado, mientras que el OP pidió una forma de restablecer el estado, como símbolos de indentificación, etc. – danlei