The definition of a class with multiple superclasses begins with a
class/1
directive of the form
:- class ClassName = [SlotDef, ...] + SuperClass + ....
The list of slot descriptions and the superclasses to the right of the
=
can appear in any order, without changing the class being
defined. In fact, the slot descriptions can be partitioned into more
than one list, without changing the class. However, it is best to
adopt a fairly simple style of writing class definition
and use it consistently.
Just as the slot names in a list of slot descriptions must be distinct, superclass names should not be repeated.