Is it possible to trace local function inside a method in ACL61 ?
For example
(defmethod foo ((p person) (h phone))
;; ...
(labels ((send () #|.............|#))
;;
Is it possible to trace SEND ?
If so which syntax of trace should be used ?
--
Vladimir Zolotykh
"Vladimir Zolotykh" <······@eurocom.od.ua> wrote in message
······················@eurocom.od.ua...
> Is it possible to trace local function inside a method in ACL61 ?
I know it is possible, I don't recall how, exactly, though it is also easy.
I am sure it is well documented under their own pages about trace. You'll
find it if you believe it is there!
--
Coby Beck
(remove #\Space "coby 101 @ bigpond . com")
* Vladimir Zolotykh <······@eurocom.od.ua>
| Is it possible to trace local function inside a method in ACL61?
Yes, when the method is named (method foo (person phone)), the labels
form is named (labels (method foo (person phone)) send). In order to
trace a function name, not just a symbol, you have to use the list form
since Allegro CL expects trace options if you specify a list.
:trace ((labels (method foo (person phone)) send))
--
In a fight against something, the fight has value, victory has none.
In a fight for something, the fight is a loss, victory merely relief.
70 percent of American adults do not understand the scientific process.
Thank you.
I've tried this.
It seems doesn't work and I can't say why.
I had asked Franz tech support. Now waiting
for answer.
Erik Naggum wrote:
>
> * Vladimir Zolotykh <······@eurocom.od.ua>
> | Is it possible to trace local function inside a method in ACL61?
>
> Yes, when the method is named (method foo (person phone)), the labels
> form is named (labels (method foo (person phone)) send). In order to
> trace a function name, not just a symbol, you have to use the list form
> since Allegro CL expects trace options if you specify a list.
>
> :trace ((labels (method foo (person phone)) send))
> --
> In a fight against something, the fight has value, victory has none.
> In a fight for something, the fight is a loss, victory merely relief.
>
> 70 percent of American adults do not understand the scientific process.
--
Vladimir Zolotykh
The
(trace ((labels (method foo (person phone)) send)))
is the correct form for tracing as you said.
This didn't work for me because the method must be compiled.
Erik Naggum wrote:
>
> * Vladimir Zolotykh <······@eurocom.od.ua>
> | Is it possible to trace local function inside a method in ACL61?
>
> Yes, when the method is named (method foo (person phone)), the labels
> form is named (labels (method foo (person phone)) send). In order to
> trace a function name, not just a symbol, you have to use the list form
> since Allegro CL expects trace options if you specify a list.
>
> :trace ((labels (method foo (person phone)) send))
> --
> In a fight against something, the fight has value, victory has none.
> In a fight for something, the fight is a loss, victory merely relief.
>
> 70 percent of American adults do not understand the scientific process.
--
Vladimir Zolotykh