I am having a problem running LISA expert system on cmucl 18d. I have
traced functions to try to pinpoint the exact point of the problem where
I get the error:
Type-error in KERNEL::OBJECT-NOT-TYPE-ERROR-HANDLER:
#<Standard-Class LISA::INFERENCE-ENGINE-OBJECT
{4812DC25}> is not of type CLASS
This happens in the PCL::class-name function when it is called from the
LISA::is-standard-classp function:
(defun is-standard-classp (class)
(or (eq (class-name class) 'standard-object)
(eq (class-name class) t)))
I have done (describe 'lisa::inference-engine-object) and that seems to
indicate that it is of type class.
CMUCL version 18c also has the same problem. LISA expert system runs
fine on CLISP, Lispworks and Allegro common lisp. I am running on
Redhat linux 7.2.
Does anyone have any idea what is going on? I have included a log of
the session including the describe and a backtrace at the point of the
problem.
Thanks for any help,
Art Nuzzo
* (reset)
0: (RESET)
1: (LISA::RESET-ENGINE #<RETE {481FDD95}>)
2: (LISA::RESET-NETWORK #<RETE-NETWORK {485DCFC5}>)
2: LISA::RESET-NETWORK returned NIL
2: (LISA::SET-INITIAL-STATE #<RETE {481FDD95}>)
3: (LISA::FORGET-ALL-FACTS #<RETE {481FDD95}>)
3: LISA::FORGET-ALL-FACTS returned
#<EQL hash table, 0 entries {485DD015}>
3: (LISA::CLEAR-CONTEXTS #<RETE {481FDD95}>)
3: LISA::CLEAR-CONTEXTS returned NIL
3: (LISA::RESET-FOCUS-STACK #<RETE {481FDD95}>)
4: (LISA::INITIAL-CONTEXT #<RETE {481FDD95}>)
4: LISA::INITIAL-CONTEXT returned #<CONTEXT "The Initial Context">
3: LISA::RESET-FOCUS-STACK returned (#<CONTEXT "The Initial
Context">)
2: LISA::SET-INITIAL-STATE returned T
2: (LISA::ENSURE-META-DATA-EXISTS INITIAL-FACT)
3: (LISA::FIND-META-OBJECT #<RETE {481FDD95}> INITIAL-FACT)
3: LISA::FIND-META-OBJECT returned NIL NIL
3: (LISA.REFLECT:FIND-DIRECT-SUPERCLASSES
#<STANDARD-CLASS INITIAL-FACT {48046F9D}>)
4: (PCL:CLASS-DIRECT-SUPERCLASSES
#<STANDARD-CLASS INITIAL-FACT {48046F9D}>)
5: (PCL:CLASS-DIRECT-SUPERCLASSES
#<Standard-Class INITIAL-FACT {485CA765}>)
5: PCL:CLASS-DIRECT-SUPERCLASSES returned
(#<Standard-Class LISA::INFERENCE-ENGINE-OBJECT {4812DC25}>)
4: PCL:CLASS-DIRECT-SUPERCLASSES returned
(#<Standard-Class LISA::INFERENCE-ENGINE-OBJECT {4812DC25}>)
4: (LISA.REFLECT::IS-STANDARD-CLASSP
#<Standard-Class LISA::INFERENCE-ENGINE-OBJECT {4812DC25}>)
5: (PCL:CLASS-NAME #<Standard-Class PCL::STANDARD-CLASS
{2819FCD5}>)
5: PCL:CLASS-NAME returned PCL::STANDARD-CLASS
Type-error in KERNEL::OBJECT-NOT-TYPE-ERROR-HANDLER:
#<Standard-Class LISA::INFERENCE-ENGINE-OBJECT
{4812DC25}> is not of type CLASS
Restarts:
0: [ABORT] Return to Top-Level.
Debug (type H for help)
5: (PCL:CLASS-NAME #<Standard-Class PCL::STANDARD-CLASS
{2819FCD5}>)
5: PCL:CLASS-NAME returned PCL::STANDARD-CLASS
5: (PCL:CLASS-NAME #<Standard-Class PCL::STANDARD-CLASS
{2819FCD5}>)
5: PCL:CLASS-NAME returned PCL::STANDARD-CLASS
(LISA.REFLECT::IS-STANDARD-CLASSP
#<Standard-Class LISA::INFERENCE-ENGINE-OBJECT {4812DC25}>)
Source:
; File: /usr/local/src/lisa-2.0-cmucl/src/reflect/reflect.lisp
(CLASS-NAME CLASS)
0] (describe 'lisa::inference-engine-object)
5: (PCL:FIND-CLASS LISA::INFERENCE-ENGINE-OBJECT NIL
#<unused-arg>)
5: PCL:FIND-CLASS returned
#<Standard-Class LISA::INFERENCE-ENGINE-OBJECT {4812DC25}>
INFERENCE-ENGINE-OBJECT is an internal symbol in the LISA package.
It names a class #<STANDARD-CLASS LISA::INFERENCE-ENGINE-OBJECT {48046485}>.
#<STANDARD-CLASS LISA::INFERENCE-ENGINE-OBJECT {48046485}> is a
structure of type STANDARD-CLASS.
CLASS-INFO: #<TYPE-CLASS CLASS>.
ENUMERABLE: NIL.
NAME: LISA::INFERENCE-ENGINE-OBJECT.
5: (PCL:CLASS-NAME #<Standard-Class PCL::STANDARD-CLASS
{2819FCD5}>)
5: PCL:CLASS-NAME returned PCL::STANDARD-CLASS
LAYOUT: #<Wrapper #<Standard-Class LISA::INFERENCE-ENGINE-OBJECT
{4812DC25}>
{480464AD}>.
STATE: NIL.
DIRECT-SUPERCLASSES: NIL.
SUBCLASSES: #<EQ hash table, 2 entries {4812DC4D}>.
5: (PCL:CLASS-NAME #<Standard-Class PCL::STANDARD-CLASS
{2819FCD5}>)
5: PCL:CLASS-NAME returned PCL::STANDARD-CLASS
PCL-CLASS: #<Standard-Class LISA::INFERENCE-ENGINE-OBJECT {4812DC25}>.
0] backtrace
5: (PCL:CLASS-NAME #<Standard-Class PCL::STANDARD-CLASS
{2819FCD5}>)
5: PCL:CLASS-NAME returned PCL::STANDARD-CLASS
5: (PCL:CLASS-NAME #<Standard-Class PCL::STANDARD-CLASS
{2819FCD5}>)
5: PCL:CLASS-NAME returned PCL::STANDARD-CLASS
0: (LISA.REFLECT::IS-STANDARD-CLASSP
#<Standard-Class LISA::INFERENCE-ENGINE-OBJECT {4812DC25}>)
1: ("Function End Breakpoint")
2: ("Function End Breakpoint")
3: (LISA::ACQUIRE-META-DATA 1 INITIAL-FACT)[:EXTERNAL]
4: (LISA::ENSURE-META-DATA-EXISTS INITIAL-FACT)
5: ("Function End Breakpoint")
6: (DEBUG::TRACE-CALL #<Trace-Info LISA::RESET-ENGINE>)
5: (PCL:CLASS-NAME #<Standard-Class RETE {48102E25}>)
5: PCL:CLASS-NAME returned RETE
5: (PCL:CLASS-NAME #<Standard-Class RETE {48102E25}>)
5: PCL:CLASS-NAME returned RETE
7: ("DEFUN ENCAPSULATE" #<RETE {481FDD95}>)
8: ("Function End Breakpoint")
9: (COMMON-LISP::%TOP-LEVEL)
10: (COMMON-LISP::RESTART-LISP)
0]