⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 modulprt.exp

📁 NASA 开发使用的一个专家系统
💻 EXP
字号:
TRUECLIPS> (batch "modulprt.bat")TRUECLIPS> (clear) ; Test for illegal export/import constructsCLIPS> (defmodule A (export ?ALL))CLIPS> (defmodule B (export deffacts ?ALL))[PRNTUTIL2] Syntax Error:  Check appropriate syntax for defmodule export specification.ERROR:(defmodule B   (export deffactsCLIPS> (defmodule B (export defrule ?ALL))[PRNTUTIL2] Syntax Error:  Check appropriate syntax for defmodule export specification.ERROR:(defmodule B   (export defruleCLIPS> (defmodule B (export defmethod ?ALL))[PRNTUTIL2] Syntax Error:  Check appropriate syntax for defmodule export specification.ERROR:(defmodule B   (export defmethodCLIPS> (defmodule B (export defmessage-handler ?ALL))[PRNTUTIL2] Syntax Error:  Check appropriate syntax for defmodule export specification.ERROR:(defmodule B   (export defmessage-handlerCLIPS> (defmodule B (export definstances ?ALL))[PRNTUTIL2] Syntax Error:  Check appropriate syntax for defmodule export specification.ERROR:(defmodule B   (export definstancesCLIPS> (defmodule B (import A deffacts ?ALL))[PRNTUTIL2] Syntax Error:  Check appropriate syntax for defmodule import specification.ERROR:(defmodule B   (import A deffactsCLIPS> (defmodule B (import A defrule ?ALL))[PRNTUTIL2] Syntax Error:  Check appropriate syntax for defmodule import specification.ERROR:(defmodule B   (import A defruleCLIPS> (defmodule B (import A defmethod ?ALL))[PRNTUTIL2] Syntax Error:  Check appropriate syntax for defmodule import specification.ERROR:(defmodule B   (import A defmethodCLIPS> (defmodule B (import A defmessage-handler ?ALL))[PRNTUTIL2] Syntax Error:  Check appropriate syntax for defmodule import specification.ERROR:(defmodule B   (import A defmessage-handlerCLIPS> (defmodule B (import A definstances ?ALL))[PRNTUTIL2] Syntax Error:  Check appropriate syntax for defmodule import specification.ERROR:(defmodule B   (import A definstancesCLIPS> (list-defmodules)MAINAFor a total of 2 defmodules.CLIPS> (clear) ; Test for importing undefined constructsCLIPS> (defmodule A (export ?ALL))CLIPS> (defmodule B (import A deftemplate foo))[MODULPSR1] Module A does not export the deftemplate foo.ERROR:(defmodule B   (import A deftemplate foo)CLIPS> (defmodule B (import A defglobal foo))[MODULPSR1] Module A does not export the defglobal foo.ERROR:(defmodule B   (import A defglobal foo)CLIPS> (defmodule B (import A defclass FOO))[MODULPSR1] Module A does not export the defclass FOO.ERROR:(defmodule B   (import A defclass FOO)CLIPS> (defmodule B (import A defgeneric foo))[MODULPSR1] Module A does not export the defgeneric foo.ERROR:(defmodule B   (import A defgeneric foo)CLIPS> (clear) ; Test for name conflictsCLIPS> (defmodule A (export ?ALL))CLIPS> (defrule A::foo (a) =>)CLIPS> (deffacts A::foo)CLIPS> (deftemplate A::foo)CLIPS> (defglobal A ?*foo* = 3)CLIPS> (defgeneric A::foo)CLIPS> (defmethod A::foo ())CLIPS> (defclass A::FOO (is-a USER))CLIPS> (defmessage-handler A::FOO bar ())CLIPS> (definstances A::foo)CLIPS> (defmodule MAIN (import A ?ALL) (export ?ALL))CLIPS> (defmodule B (import MAIN ?ALL))CLIPS> (defrule B::foo (b) =>)CLIPS> (deffacts B::foo)CLIPS> (deftemplate B::foo)[CSTRCPSR3] Cannot define deftemplate foo because of an import/export conflict.ERROR:(deftemplate B::fooCLIPS> (defglobal B ?*foo* = 3)[CSTRCPSR3] Cannot define defglobal foo because of an import/export conflict.ERROR:(defglobal B ?*foo* CLIPS> (defgeneric B::foo)[CSTRCPSR3] Cannot define defgeneric foo because of an import/export conflict.ERROR:(defgeneric B::fooCLIPS> (defmethod B::foo ())[CSTRCPSR3] Cannot define defgeneric foo because of an import/export conflict.ERROR:(defmethod B::fooCLIPS> (defclass B::FOO (is-a USER))[CSTRCPSR3] Cannot define defclass FOO because of an import/export conflict.ERROR:(defclass B::FOOCLIPS> (defmessage-handler B::FOO bar ())CLIPS> (definstances B::foo)CLIPS> (defmodule C (export ?ALL))CLIPS> (defmodule D (import A ?ALL) (import C ?ALL))CLIPS> (defrule C::foo =>)[FACTLHS1] WARNING: Creating implied initial-fact deftemplate in module C.  You probably want to import this deftemplate from the MAIN module.CLIPS> (deffacts C::foo)CLIPS> (deftemplate C::foo)[CSTRCPSR3] Cannot define deftemplate foo because of an import/export conflict.ERROR:(deftemplate C::fooCLIPS> (defglobal C ?*foo* = 3)[CSTRCPSR3] Cannot define defglobal foo because of an import/export conflict.ERROR:(defglobal C ?*foo* CLIPS> (defgeneric C::foo)[CSTRCPSR3] Cannot define defgeneric foo because of an import/export conflict.ERROR:(defgeneric C::fooCLIPS> (defmethod C::foo ())[CSTRCPSR3] Cannot define defgeneric foo because of an import/export conflict.ERROR:(defmethod C::fooCLIPS> (defclass C::FOO (is-a USER))[CSTRCPSR3] Cannot define defclass FOO because of an import/export conflict.ERROR:(defclass C::FOOCLIPS> (defmessage-handler C::FOO bar ())[MSGPSR1] A class must be defined before its message-handlers.ERROR:(defmessage-handler C::FOO   barCLIPS> (definstances C::foo)CLIPS> (defmodule E (import A ?ALL) (import C ?ALL))CLIPS> (list-defrules *)MAIN:A:   fooB:   fooC:   fooD:E:For a total of 3 defrules.CLIPS> (list-deffacts *)MAIN:   initial-factA:   fooB:   fooC:   fooD:E:For a total of 4 deffacts.CLIPS> (list-deftemplates *)MAIN:   initial-factA:   a   fooB:   bC:   initial-factD:E:For a total of 5 deftemplates.CLIPS> (list-defglobals *)MAIN:A:   fooB:C:D:E:For a total of 1 defglobal.CLIPS> (list-defgenerics *)MAIN:A:   fooB:C:D:E:For a total of 1 defgeneric.CLIPS> (list-defmethods A::foo)foo #1  For a total of 1 method.CLIPS> (list-defmethods B::foo)[GENRCFUN3] Unable to find generic function B::foo in function list-defmethods.CLIPS> (list-defmethods C::foo)[GENRCFUN3] Unable to find generic function C::foo in function list-defmethods.CLIPS> (list-defmethods D::foo)[GENRCFUN3] Unable to find generic function D::foo in function list-defmethods.CLIPS> (list-defclasses *)MAIN:   FLOAT   INTEGER   SYMBOL   STRING   MULTIFIELD   EXTERNAL-ADDRESS   FACT-ADDRESS   INSTANCE-ADDRESS   INSTANCE-NAME   OBJECT   PRIMITIVE   NUMBER   LEXEME   ADDRESS   INSTANCE   USER   INITIAL-OBJECTA:   FOOB:C:D:E:For a total of 18 defclasses.CLIPS> (list-defmessage-handlers A::FOO)bar primary in class A::FOOFor a total of 1 message-handler.CLIPS> (list-defmessage-handlers B::FOO)[CLASSFUN1] Unable to find class B::FOO in function list-defmessage-handlers.CLIPS> (list-defmessage-handlers C::FOO)[CLASSFUN1] Unable to find class C::FOO in function list-defmessage-handlers.CLIPS> (list-defmessage-handlers D::FOO)[CLASSFUN1] Unable to find class D::FOO in function list-defmessage-handlers.CLIPS> (list-definstances *)MAIN:   initial-objectA:   fooB:   fooC:   fooD:E:For a total of 4 definstances.CLIPS> (clear) ; Test for scopeCLIPS> (defmodule A (export ?ALL))CLIPS> (deftemplate A::foo (slot x))CLIPS> (defglobal A ?*foo* = 3)CLIPS> (defgeneric A::foo)CLIPS> (defmethod A::foo () x)CLIPS> (defclass A::FOO (is-a USER) (role concrete) (slot x))CLIPS> (defmodule B (import A ?ALL))CLIPS> (deffacts B::foo (foo (x 3)))CLIPS> (defrule B::bar (foo (x 3)) => (printout t ?*foo* " " (foo)))CLIPS> (make-instance of FOO)[A::gen1] ;; Different Name OKCLIPS> (instances)[gen1] of A::FOO ;; Should have same name as aboveFor a total of 1 instance.CLIPS> (clear) ; Test fact scopingCLIPS> (defmodule A)CLIPS> (assert (a))<Fact-0>CLIPS> (assert (b))<Fact-1>CLIPS> (defmodule B)CLIPS> (assert (b))<Fact-2>CLIPS> (assert (c))<Fact-3>CLIPS> (assert (c))FALSECLIPS> (facts A)f-0     (a)f-1     (b)For a total of 2 facts.CLIPS> (facts B)f-2     (b)f-3     (c)For a total of 2 facts.CLIPS> (facts MAIN)CLIPS> (facts *)f-0     (a)f-1     (b)f-2     (b)f-3     (c)For a total of 4 facts.CLIPS> (clear) ; Test redefinition of MAIN moduleCLIPS> (defmodule MAIN (export ?ALL))CLIPS> (defmodule MAIN (export deftemplate ?ALL))[CSTRCPSR4] Cannot redefine defmodule MAIN while it is in use.ERROR:(defmodule MAINCLIPS> (clear)CLIPS> (defmodule MAIN (export ?ALL))CLIPS> (clear) ; Test ?NONE keywordCLIPS> (defmodule MAIN (export ?NONE ?ALL))[PRNTUTIL2] Syntax Error:  Check appropriate syntax for defmodule export specification.ERROR:(defmodule MAIN   (export ?NONE ?ALLCLIPS> (defmodule MAIN (export deftemplate ?NONE ?ALL))[PRNTUTIL2] Syntax Error:  Check appropriate syntax for defmodule export specification.ERROR:(defmodule MAIN   (export deftemplate ?NONE ?ALLCLIPS> (clear)CLIPS> (deftemplate MAIN::foo (slot x))CLIPS> (defmodule MAIN (export ?NONE))CLIPS> (defmodule FOO (import MAIN ?NONE))[MODULPSR1] Module MAIN does not export any constructs.ERROR:(defmodule FOO   (import MAINCLIPS> (clear)CLIPS> (deftemplate MAIN::foo (slot x))CLIPS> (defmodule MAIN (export ?NONE))CLIPS> (defmodule FOO (import MAIN deftemplate ?NONE))[MODULPSR1] Module MAIN does not export any constructs.ERROR:(defmodule FOO   (import MAINCLIPS> (clear)CLIPS> (deftemplate MAIN::foo (slot x))CLIPS> (defmodule MAIN (export deftemplate ?NONE))CLIPS> (defmodule FOO (import MAIN ?NONE))[MODULPSR1] Module MAIN does not export any constructs.ERROR:(defmodule FOO   (import MAINCLIPS> (clear)CLIPS> (deftemplate MAIN::foo (slot x))CLIPS> (defmodule MAIN (export deftemplate ?NONE))CLIPS> (defmodule FOO (import MAIN deftemplate ?NONE))[MODULPSR1] Module MAIN does not export any constructs.ERROR:(defmodule FOO   (import MAINCLIPS> (clear)CLIPS> (deftemplate MAIN::foo (slot x))CLIPS> (defmodule MAIN (export deftemplate foo))CLIPS> (defmodule FOO (import MAIN ?NONE))CLIPS> (assert (foo (x 3)))[EXPRNPSR3] Missing function declaration for x.CLIPS> (clear)CLIPS> (deftemplate MAIN::foo (slot x))CLIPS> (defmodule MAIN (export deftemplate foo))CLIPS> (defmodule FOO (import MAIN deftemplate ?NONE))CLIPS> (assert (foo (x 3)))[EXPRNPSR3] Missing function declaration for x.CLIPS> (clear) ; Miscellaneous (previously a bug)CLIPS> (defmodule FOO (export deftemplate woz pif))CLIPS> (deftemplate FOO::bar)CLIPS> (deftemplate FOO::woz)CLIPS> (defmodule YAK1 (import FOO deftemplate bar))[MODULPSR1] Module FOO does not export the deftemplate bar.ERROR:(defmodule YAK1   (import FOO deftemplate bar)CLIPS> (defmodule YAK2 (import FOO deftemplate woz))CLIPS> (defmodule YAK3 (import FOO deftemplate pif))[MODULPSR1] Module FOO does not export the deftemplate pif.ERROR:(defmodule YAK3   (import FOO deftemplate pif)CLIPS> (defmodule FIB)CLIPS> (defmodule BIK (import FIB ?ALL))[MODULPSR1] Module FIB does not export any constructs.ERROR:(defmodule BIK   (import FIBCLIPS> (defmodule FIB1 (export defglobal ?ALL))CLIPS> (defmodule BIK1 (import FIB1 deftemplate ?ALL))[MODULPSR1] Module FIB1 does not export any deftemplate constructs.ERROR:(defmodule BIK1   (import FIB1 deftemplate ?ALL)CLIPS> (clear) ; Implied deftemplates causing conflictCLIPS> (defmodule MAIN (export ?ALL))CLIPS> (defmodule BAR (import MAIN ?ALL))CLIPS> (deftemplate BAR::b (slot x))CLIPS> (assert (b (x 3)))<Fact-0>CLIPS> (set-current-module MAIN)BARCLIPS> (assert (b 3))[CSTRCPSR3] Cannot define implied deftemplate b because of an import/export conflict.CLIPS> (defrule foo => (assert (b)))[CSTRCPSR3] Cannot define implied deftemplate b because of an import/export conflict.ERROR:(defrule MAIN::foo   =>   (assert (bCLIPS> (defrule foo (b) =>)[CSTRCPSR3] Cannot define implied deftemplate b because of an import/export conflict.ERROR:(defrule MAIN::foo   (bCLIPS> (list-deftemplates *)MAIN:   initial-factBAR:   bFor a total of 2 deftemplates.CLIPS> (clear)CLIPS> (defmodule MAIN (export ?ALL))CLIPS> (deftemplate a (slot x))CLIPS> (defmodule BAR (import MAIN ?ALL) (export ?ALL))CLIPS> (deftemplate b (slot x))CLIPS> (defmodule YAK (import MAIN ?ALL) (import BAR ?ALL))CLIPS> (deftemplate c (slot x))CLIPS> (assert (c (x 3)))<Fact-0>CLIPS> (set-current-module BAR)YAKCLIPS> (assert (b (x 4)))<Fact-1>CLIPS> (set-current-module MAIN)BARCLIPS> (assert (a (x 5)))<Fact-2>CLIPS> (defrule YAK::c (a (x ?)) (b (x ?)) (c (x ?)) =>)CLIPS> (defrule BAR::b (a (x ?)) (b (x ?)) =>)CLIPS> (defrule MAIN::a (a (x ?)) =>)CLIPS> (agenda *)MAIN:   0      a: f-2BAR:   0      b: f-2,f-1YAK:   0      c: f-2,f-1,f-0For a total of 3 activations.CLIPS> (clear)CLIPS> (dribble-off)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -