Am I wrong to say that the 'misfeature' mentioned below hasn't made it into a feature yet in the latest release 7.0 b4?
Is there any plan to still add it in time for 7.0 final?

I've written defadvice for every numeric Jess-function (+, -, *, /, <, <=, >, >=, =, <>, min, max, div, ...) to support BigDecimals only to discover that they don't support nesting.
The only solution I see for now is to convert them into deffunctions, and go through all my rules one by one to change the function call.


Ivan Op de Beeck

Ernest Friedman-Hill wrote on Mon, 29 Mar 2004:

I think Karl-Heinz Krempels wrote:
> Hi guys,
> it seems that there is a bug in JESS regarding the handling of the
> defadvice before and after feature. If we define a defadvice for
> assert ...
> the defadvice code is executed only for the first assert and not for
> the nested one. As solution we can simply define another
> function that executes the defadvice before code and then calls the
> assert.

Thanks for the report. This isn't a bug, really, but a misfeature:
advice is deliberately turned off during the execution of the advice
itself, so that if advice calls the adviced function, you don't get
infinite recursion. But this kind of explicit nested call *should* be
adviced, so I think a change is in order.

Ernest Friedman-Hill  
Science and Engineering PSEs        Phone: (925) 294-2154
Sandia National Labs                FAX:   (925) 294-2234
PO Box 969, MS 9012                 [EMAIL PROTECTED]
Livermore, CA 94550        

Reply via email to