常用命令
(deftemplate) - 定义模板,(本人使用与与外部数据交流使用)
(defclass) - 定义事实模板 类似于c++类class
(defrule) - 规则关键字
(deffunction) - 定义函数
(assert) - 执行命令
(facts) - 显示当前的事实。
(reset) - 重新初始化事实
(clear) - 清除所有的规则和事实以及对象实例
(run) - 启用程序
分号“;”用于注释
deftemplate :
(deftemplate UI-state-park
(slot id (default-dynamic (gensym*))) ;slot单字段 只匹配一个值
(multislot attributeA)) ;multislot 多字段可以匹配多字段 跟c++种list相同
defclass:
(defclass BaseModel
(is-a USER) ; is-a用于继承其它模板 与c++中的继承相同
(slot fname (type STRING)) ;type代表值类型后紧跟类型
(slot type (type STRING)(default "basemodel"))) ;default 给定初始值
defrule:
(defrule init-Time ;defrule 后跟规则名 该规则没有限定条件,则程序run后就自动执行
=>
(printout t " 规则" crlf)) ;crlf 换行
含有限定条件如下
(defrule init-Time ;defrule 后跟规则名 该规则没有限定条件,则程序run后就自动执行
(send ?a) ;限定条件,需要接收命令 ,send name(send用于区分命令 ?a为 接收参数 这两个都可随意更改命名)
=>
(printout t " 规则-" ?a))
deffunction:
(deffunction Calculation (?class) ;deffunction 后跟函数名 括号内部用于接收参数
(printout t "函数" ))
assert:
(assert (printout t " 执行")) ;该命令用于执行命令,可根据实际情况执行不同命令,函数等
facts:
(facts) ;用于当前显示事实
reset:
(reset) ;用于重新初始化事实
clear:
(clear) ;清除所有的规则和事实以及对象实例
run:
(run) ;启动clips程序