Download SNePS 2.7 User`s Manual - University at Buffalo, Computer Science
Transcript
48 CHAPTER 5. PROGRAM INTERFACE (M2! (RELREL FRANZ OTTO)) (M3 (MYREL HANS) (RELREL FRANZ)) (M4! (ARG (M3))) (M5! (RELREL FRANZ HANS OTTO) (TEST B1)) (M6! (MYREL B1) (RELREL FRANZ OTTO)) (M7! (ARG (M3)) (MYREL B1)) (B1 FRANZ FRANZ HANS M1! M2! M3 M4! M5! M6! M7! OTTO OTTO) SNEPS:DEFAULT-DEFAULTCT ;; Here’s what the definition of myassert looks like: > (ppdef ’myassert) (LAMBDA (RELATION NODES) (BLOCK MYASSERT (LET ((BASE-NODE-VAR ’MYBASE)) (PROGN ;; progn generated by #! (SNEPS::WITH-SNEPSUL-EVAL ‘(SNEPS:DEFINE ,(SNEPS::SNEPSULIZE RELATION) ,RELATION SNEPSUL::MYREL SNIP::TEST) #’SNEPS:TOPSNEVAL NIL) (SNEPS::WITH-SNEPSUL-EVAL ‘(SNEPS:ASSERT ,(SNEPS::SNEPSULIZE RELATION) (,@(SNEPS::SNEPSULIZE NODES)) SNIP::TEST (SNEPS:!#! ’,(SNEPS::SNEPSULIZE BASE-NODE-VAR))) #’SNEPS:TOPSNEVAL NIL) (SNEPS::WITH-SNEPSUL-EVAL ‘(SNEPS::DESCRIBE ,@(SNEPS::SNEPSULIZE (SETQ NODES (CDR NODES)))) #’SNEPS:TOPSNEVAL NIL) (SNEPS::WITH-SNEPSUL-EVAL ‘(SNEPS:ASSERT ,RELATION (,@NODES) SNEPSUL::MYREL (SNEPS:* ’,(SNEPS::SNEPSULIZE BASE-NODE-VAR))) #’SNEPS:TOPSNEVAL NIL) (SNEPS::WITH-SNEPSUL-EVAL ‘(SNEPS:ASSERT SNEPS:ARG (SNEPS:BUILD SNEPSUL::MYREL SNEPSUL::HANS ,(SNEPS::SNEPSULIZE RELATION) SNEPSUL::FRANZ) SNEPSUL::MYREL (SNEPS:* ’SNEPSUL::MYBASE)) #’SNEPS:TOPSNEVAL NIL) (SNEPS::WITH-SNEPSUL-EVAL ’(SNEPS::DESCRIBE (SNEPS:* ’SNEPS:NODES)) #’SNEPS:TOPSNEVAL NIL)))))