




A named KnowledgeWorks CLOS class is defined by the macro def-named-kb-class which is syntactically identical to the Common Lisp 
defclass
 macro, and semantically identical with the exception that it adds a KnowledgeWorks mixin class named-kb-object if none of the superclasses already contains 
it, and makes the default name for the objects be a symbol generated from the class name. Classes defined by def-named-kb-classcontain a 
name
 slot which those defined by def-kb-class do not.
The function 
make-instance
 can be given the initialisation argument 
:name
 to specify a name. If not specified, a default name is generated. All names must be distinct as regarded by 
eq
. The function
(get-kb-object <name>)
retrieves the instance from its name. The function
(kb-name <object>)
returns the name of the given object.