>>>>> "Chisheng" == Chisheng Huang <[EMAIL PROTECTED]> writes:
Chisheng> I came across this problem after a bunch of fancy ways of tracing
were
Chisheng> added into Slime a few days ago. It will be nice to have the
ability
Chisheng> to trace a function only when it is called inside of a particular
method
Chisheng> but it is not important for me. Anything you do to move the
behaviour
Chisheng> of CMUCL's TRACE closer to what's described in CMUCL User's
Manual will
Chisheng> be great.
I think the tracing of methods already works as in 2.23.7. It's the
:wherein option that's not right.
Chisheng> (trace x :wherein (method call-x (babu)))
Chisheng> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Chisheng> If I remember correctly, this is what Slime is using for CMUCL
right now.
Chisheng> If we allow (METHOD CALL-X (BABU)) be a "name", this should be
O.K., too.
Chisheng> Afterall, we can do (TRACE (METHOD CALL-X (BABU))).
Ah, ok. I think this could be done. But this is a bit tricky because
:wherein is a name or a list of names. So is (method call-x (babu)) 3
functions or just the one method?
>> The :wherein option takes a name or list of names of functions, so
>> this call is really saying you want to trace when X is called from the
>> functions METHOD, CALL-X or (BABU). The correct call is
>>
>> (trace x :wherein ((method call-x (babu))))
Chisheng> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Chisheng> IMHO, this is not consistent with what's described in Section
2.23.7 of
Chisheng> CMUCL User's Manual but I'm not a CMUCL developer. Maybe you can
move
Chisheng> this to the cmucl-imp list and ask what other CMUCL developers
think on
Chisheng> this issue?
I think you'd need to do this if you wanted to trace the call to X
from the function FOO or the method:
(trace x :wherein (foo (method call-x (babu))))
Are you on the cmucl-imp list? If not, this list is fine.
Ray