As this expansion makes clear, the resulting value of <my-class>
is an instance of the class <class> with slot values specifying
the superclasses and slot definitions for the class <my-class>.
(#:dsupers and #:slots are initialization keywords for the
dsupers and dslots slots of the <class> class.)

Now suppose that you want to define a new class with a metaclass other
than the default <class>. This is done by writing:

In this case, the value of <my-class2> is an instance of the more
specialized class <my-metaclass>. Note that
<my-metaclass> itself must previously have been defined as a
subclass of <class>. For a full discussion of when and how it is
useful to define new metaclasses, see MOP Specification.

Now let’s make an instance of <my-class2>:

(define my-object (make <my-class2> ...))

All of the following statements are correct expressions of the
relationships between my-object, <my-class2>,
<my-metaclass> and <class>.