p j wrote:
> there's a bug with the trace procedure.  im using latest 6.01.

Yes.  There's some messages about this (including a partial 
workaround) on the beta forum.

One problem is that executet uses the jtrace locale rather
than the locale of the caller.  It might be possible to 
discover the locale of the caller using the 13!: foreigns,
but I've not thought that through yet.

An alternative is to simply assume that the base locale
is being used, replacing the ". verb with do_base_ (this
only seems to matter when the sentence being executed
begins with 't_z=.').

The verbs used by encall also suffer from this issue.
I think this can be worked around by defining

call_jtrace_z_=: 1 : 0          NB. for tracing function calls
 (5!:5 <u=. 5!:5 <'u') call1_jtrace_    <y
 :
 (5!:5 <u=. 5!:5 <'u') call1_jtrace_ x;<y
)

and replacing calls to 'call' with calls to call_jtrace_base_

Note that I recommend making a copy of trace.ijs so that
if you damage it you can easily recover.

Finally, please note that I haven't tested my suggested 
change to 'call'.

-- 
Raul

----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to