It turns out that all Common Lisp data objects are instances of classes. Moreover, the objects created using defclass and make-instance can be used with ordinary Lisp functions, not only with methods. To find the class of an object, use the function class-of . In the rest of this document, we will often specify the syntax of something in Common Lisp. Here are the conventions used in these descriptions.
Lower case is used for syntactic variables.
For simple things, forget about class options. We will say nothing more about them here. Defclass is similar to defstruct , but the syntax is a bit different, and you have more control over what things are called. Note that defclass lets you control what things are called. For instance, you don't have to call the accessor person-name .