Estoy tratando de inspeccionar el valor de una variable en un punto de interrupción determinado. Aquí está mi código simplificado:Inspeccionar una variable en el lisp depurador SLIME
(defun foo()
(maplist (lambda (var)
(break)
var)
'(a b c)))
limo entra en modo depuración en este momento. Así que trato de evaluar presionando la tecla ":" o la tecla "e" y luego escribo "(var var)", pero la baba sigue diciendo:
La variable VAR está desvinculada. [Condición de tipo UNBOUND-VARIABLE]
estoy confundido en cuanto a por qué está diciendo este puesto "(pausa)" está dentro de la función anónima y dentro del ámbito de "var".
También, por supuesto, tendría que estar en el marco correcto al presionar 'e', pero supongo que ya lo sabe, y es ahí donde termina de todos modos por defecto. – danlei
Sí, esto funcionó para mí, gracias. Además, una vez que configura la línea "(declaim (optimizar (depurar 3)))", debe volver a compilar su código de lisp para que el cambio sea efectivo. Y sí, debe estar en el marco correcto al evaluar en la variable adecuada en el depurador. –