Next Prev Up Top Contents Index

4.2.9 Tracing functions from inside other functions

:inside

Trace keyword

:inside list-of-functions

The functions given in the argument to :inside should reference the traced function in their implementation. The traced function is then only traced in calls to any function in the list of functions, rather than in direct calls to itself.

For example:

  1. Define the function fac2 , which calls fac , as follows:
  2. (defun fac2 (x)
       (fac x))
  3. For the fac function, set the value of :inside to fac2 .
  4. Call fac , and notice that no tracing information is produced.
  5. CL-USER 154 > (fac 3)
    6
  6. Call fac2 , and notice the tracing information.
CL-USER 155 > (fac2 3)
0 FAC > (3)
  1 FAC > (2)
    2 FAC > (1)
    2 FAC < (1)
  1 FAC < (2)
0 FAC < (6)

LispWorks User Guide - 18 Feb 2003

Next Prev Up Top Contents Index