A KnowledgeWorks CLOS class may not have a class name which coincides with any rule, context or KnowledgeWorks structure (See KnowledgeWorks Structures). KnowledgeWorks CLOS classes fall into one of two categories, either unnamed or named. Named objects can be given a name (or they use a default name) and can be referred to by name. Otherwise, named and unnamed objects have equivalent functionality. CLOS objects may be made by the Common Lisp generic function make-instance
, taking the same arguments. An unbound slot will return :UNBOUND
until set.
Name clashes are arbitrated by kw:*signal-kb-name-clash*
and signal an error by default. See the reference manual page.