Join nodes with function call tests are not shared. Although
simple ones like this could be, deciding to share more complex ones could
be very hard, so Jess simply punts. Expect to see improvement here as
an optimization in the future.
Note that these particular tests would be more efficient if written in
the pattern itself, rather than in test CEs, anyway.
-----------------------------
I have a bunch of rules of the following type, where clauses look identical,
but when I use the (watch compilations) command or the (view), it clearly
shows that 2-input nodes are not being reused. Why?
And what can I do to solve the problem?
(BTW, the thing object is defined by a defclass, if that makes a
difference).
(defrule rule1
""
(declare (salience 0))
(thing (color ?f1) (shape ?f0))
(test (EQUALS ?f0 "02907"))
(test (EQUALS ?f1 "64772"))
=>
)
(defrule rule2
""
(declare (salience 0))
(thing (color ?f1) (shape ?f0))
(test (EQUALS ?f0 "02907"))
(test (EQUALS ?f1 "64772"))
=>
)
--
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 (use your own address!) List problems? Notify [EMAIL PROTECTED]
---------------------------------------------------------------------