CLIPS-模块

来源:互联网 发布:跆拳道和武术知乎 编辑:程序博客网 时间:2024/05/19 13:19

一、MAIN::control-information事实属于MAIN模块,可以定义多个模块,在每个模块里定义事实、规则、自定义结构等。

CLIPS> (ppdeffacts control-information)
(deffacts MAIN::control-information
   (phasedetection)
   (phase-afterdetection isolation)
   (phase-afterisolation recovery)
   (phase-afterrecovery detection))

二、定义模块

CLIPS> (defmodule mytest1)
CLIPS> (defmodule mytest2)

三、指定和显示模块

CLIPS> (get-current-module)
mytest2
CLIPS> (set-current-module mytest1)
mytest2
CLIPS> (get-current-module)
mytest1
CLIPS>

四、在列出规则和事实的命令中使用模块参数,具体指定哪个模块。

CLIPS> (list-defrules MAIN)
CLIPS> (list-deffacts MAIN)
initial-fact
For a total of 1 deffacts.
CLIPS>

CLIPS> (set-current-module mytest1)
MAIN
CLIPS> (facts MAIN)
f-0    (initial-fact)
For a total of 1 fact.
CLIPS>

 

 五、从其他模块中输入结构

(import <module-name> ?ALL)

(import <module-name> ?NONE)

(import <module-name> deftemplate?ALL)

(import <module-name> deftemplate?NONE)

(import <module-name> deftemplate<deftemplate-name>+)

六、输出结构到其他模块

(export  ?ALL)

(export ?NONE)

(export deftemplate ?ALL)

(export  deftemplate ?NONE)

(export deftemplate<deftemplate-name>+)