4.2 Inspect

The function inspect is an interactive version of describe . It displays objects in a similar way to describe . Entering the teletype inspector causes a new level of the top loop to be entered with a special prompt indicating that the inspector has been entered and showing the current inspector level.

In the modified top loop, if you enter a slot name, that slot is inspected and the current object is pushed onto an internal stack of previously inspected objects. The special variables $ , $$ , and $$$ are bound to the top three objects on the inspector stack.

The following keywords are also treated specially by the inspector.

Inspector keywords


Display current values of control variables.


Display current object.


Display more of current object.


Display help on inspector commands.

:i m

Recursively invoke a new inspector. m is an object to inspect.


Change the inspection mode -- see Inspection modes.


Quit current inspector.

:s n v

Sets slot n to value v.


Show inspector stack.

:u int

Undo last inspection. If you supply an optional integer argument, int , then the last int inspections are undone.


Undo last inspection and redisplay current object.

The control variables *inspect-print-level* and *inspect-print-length* are similar to *describe-print-level* and *describe-print-length* (see above).

:dm displays more slots of the current object. If the object has more than *describe-length* slots, then the first *describe-length* will be printed, followed by an ellipsis and then

(:dm for more)

If you type :dm at the prompt, the next *describe-length* slots are displayed. This only works on the last inspected object, so if you recursively inspect a slot and come back, :dm does not do anything useful. Typing :d lets you view the object again.

:ud is equivalent to typing :u followed by :d .

LispWorks User Guide - 8 Apr 2005