我想让一个人过敏,然后通过过敏来分裂过敏来断言每个人。为此,我使用do-backward-chaining,assert-string和readline。 (do-backward-chaining allergies)
(defrule ask-allergies
(need-allergies nil)
=>
(printout t "Tell me your
有没有什么方法可以根据类中的特定插槽在LHS端获取剪辑中的对象? (defclass SAMPLE
"all the information about students"
(is-a BASE_SAMPLE) (role concrete) (pattern-match reactive)
(slot ID (create-accessor read-write)
我在另一个程序中嵌入了CLIPS,并且主要将它用作推理引擎。我的规则条件使用logical关键字,因此当规则不受支持时,会自动收回作为规则动作的任何事实(BPG第5.4.8节)。我通常需要检查所有类型为foo的事实(其中foo是事实的第一个字段,例如(foo bar baz))。要做到这一点,我一直在解析整个事实清单,但是这样做已经成为经济放缓的重要原因。 我关心的每一个事实都是在自己的规则中声明