I'll try to find a concrete example with some facts I can display etc. Basically if I add 'junk' to the LHS, it fires.. if I leave it slimmed down.. it doesn't.. but the 'junk' I add, doesn't match/touch the pattern that is in place (and isn't working).
Yes, that's how you can sweep a lot of data of different type together in one rule. The rule still fires of some types are not present.
Are there situations or usages of (accumulate) that would actually prevent a rule from firing?
?c <- (accumulate (bind ?count 0) ;; initializer
(bind ?count (+ ?count 1)) ;; action
(pattern to look for.. single fact, not even complex)
If there are *no matches* to this pattern, should it always fire and have ?c bound to zero?