Types are arranged in a directed acyclic graph, except for the presence of equivalences. Declarations can be made about types using declare , proclaim , declaim , or the . For more information about declarations , see Section 3.3 Declarations . Among the fundamental objects of the object system are classes . A class determines the structure and behavior of a set of other objects , which are called its instances .
Every object is a direct instance of a class .
The class of an object determines the set of operations that can be performed on the object . For more information, see Section 4.3 Classes . It is possible to write functions that have behavior specialized to the class of the objects which are their arguments . For more information, see Section 7.6 Generic Functions and Methods . The class of the class of an object is called its metaclass .