I played with the idea of having a 'function called' event, but it is
too computationally expensive. There's a very noticeable slowdown, of
the order of 25% or so, with even a few listeners.
Instead, the next release of Jess will have a feature called
'defadvice'. Defadvice lets you attach code to a Jess function to be
called before or after that function runs. There will be an option to
advice all functions at once, too. In any case, you'll be able to
advice all funtions with a generic debugger stub, which will let you
do what ypu want.
The advantage of this method is that it adds no overhead at all,
unless you use it, of course.
I think Alan Moore wrote:
>
> I am building a debugger for jess but cannot find a way to enable single
> step debugging (assuming that "single step" means that the debugger can step
> through the function calls/control structures on the RHS of a rule.)
>
> The closest thing that I can find is the DEFRULE_FIRED event but it is not
> granular enough.
>
> Would it be possible to fire an event inside the Funcall class, possibly in
> execute() or simpleExecute()? Ideally, the source context (stream?) would
> be made available with the event but I would settle for whatever I can
> get...
>
> If necessary, I can make the modifications myself and give them to you for
> validation and integration into your sources.
>
> Suggestions?
>
> alanm
>
> Alan Moore (mailto:[EMAIL PROTECTED])
> Quadrant International (http://www.qi.com)
>
> ---------------------------------------------------------------------
> To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'
> in the BODY of a message to [EMAIL PROTECTED], NOT to the
> list. List problems? Notify [EMAIL PROTECTED]
> ---------------------------------------------------------------------
>
>
---------------------------------------------------------
Ernest Friedman-Hill
Distributed Systems Research Phone: (925) 294-2154
Sandia National Labs FAX: (925) 294-2234
Org. 8920, MS 9214 [EMAIL PROTECTED]
PO Box 969 http://herzberg.ca.sandia.gov
Livermore, CA 94550
---------------------------------------------------------------------
To unsubscribe, send the words 'unsubscribe jess-users [EMAIL PROTECTED]'
in the BODY of a message to [EMAIL PROTECTED], NOT to the
list. List problems? Notify [EMAIL PROTECTED]
---------------------------------------------------------------------