2010-09-16 5 views
22

Newbie Common Lisp question ici.Réinitialiser l'état dans Common Lisp

Existe-t-il un moyen de réinitialiser l'état de l'environnement? Qu'est-ce que je veux dire, est-ce qu'il y a une commande qui ramène le REPL au même état qu'il était juste après le démarrage, c'est-à-dire, désintégrer toutes les variables, fonctions, etc. en SBCL (la mise en œuvre que j'utilise) pour le faire?

(EDIT: Je sais que BOUE, M-x boue-restart-inférieure-Lisp fait cela, mais je me demande s'il y a un moyen sans redémarrer le processus)

+0

Pas une réponse, donc je mets dans un commentaire: Je ne sais pas exactement pourquoi vous posez cette question, mais vous pourriez être intéressé à faire un core dump d'une image Lisp dans un état "propre" (Personnellement, je chargerais au moins Quicklisp en premier, mais c'est à vous de le faire) et de le charger; vous pouvez le faire en SBCL avec ['sb-ext: save-lisp-and-die'] (http://www.sbcl.org/manual/#Function-sb_002dext_003asave_002dlisp_002dand_002ddie) – fouric

Répondre

22

pas en général, non. Je veux parfois faire quelque chose comme ça, donc mon flux de travail est généralement de créer un nouveau paquet pour contenir tout projet que je démarre, puis quand je veux réinitialiser les choses, j'utilise DELETE-PACKAGE. Je ne fais jamais de travail dans le paquet CL-USER, car différentes implémentations ont des choses différentes.

-1

Utilisez Cc Mo, comme indiqué dans le tampon Clear Menu REPL

+3

Cela supprime simplement la sortie, tandis que l'OP demandé un moyen de réinitialiser l'état, comme des symboles d'uninterning etc. – danlei

Questions connexes